pnfs: move common blocklayout XDR defintions to nfs4.h
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
This commit is contained in:
parent
513d6d7a95
commit
8bb2897582
@ -46,13 +46,6 @@
|
||||
|
||||
struct pnfs_block_dev;
|
||||
|
||||
enum pnfs_block_volume_type {
|
||||
PNFS_BLOCK_VOLUME_SIMPLE = 0,
|
||||
PNFS_BLOCK_VOLUME_SLICE = 1,
|
||||
PNFS_BLOCK_VOLUME_CONCAT = 2,
|
||||
PNFS_BLOCK_VOLUME_STRIPE = 3,
|
||||
};
|
||||
|
||||
#define PNFS_BLOCK_MAX_UUIDS 4
|
||||
#define PNFS_BLOCK_MAX_DEVICES 64
|
||||
|
||||
@ -117,13 +110,6 @@ struct pnfs_block_dev {
|
||||
struct pnfs_block_dev_map *map);
|
||||
};
|
||||
|
||||
enum exstate4 {
|
||||
PNFS_BLOCK_READWRITE_DATA = 0,
|
||||
PNFS_BLOCK_READ_DATA = 1,
|
||||
PNFS_BLOCK_INVALID_DATA = 2, /* mapped, but data is invalid */
|
||||
PNFS_BLOCK_NONE_DATA = 3 /* unmapped, it's a hole */
|
||||
};
|
||||
|
||||
/* sector_t fields are all in 512-byte sectors */
|
||||
struct pnfs_block_extent {
|
||||
union {
|
||||
@ -134,15 +120,12 @@ struct pnfs_block_extent {
|
||||
sector_t be_f_offset; /* the starting offset in the file */
|
||||
sector_t be_length; /* the size of the extent */
|
||||
sector_t be_v_offset; /* the starting offset in the volume */
|
||||
enum exstate4 be_state; /* the state of this extent */
|
||||
enum pnfs_block_extent_state be_state; /* the state of this extent */
|
||||
#define EXTENT_WRITTEN 1
|
||||
#define EXTENT_COMMITTING 2
|
||||
unsigned int be_tag;
|
||||
};
|
||||
|
||||
/* on the wire size of the extent */
|
||||
#define BL_EXTENT_SIZE (7 * sizeof(__be32) + NFS4_DEVICEID4_SIZE)
|
||||
|
||||
struct pnfs_block_layout {
|
||||
struct pnfs_layout_hdr bl_layout;
|
||||
struct rb_root bl_ext_rw;
|
||||
|
@ -465,7 +465,7 @@ out:
|
||||
static size_t ext_tree_layoutupdate_size(size_t count)
|
||||
{
|
||||
return sizeof(__be32) /* number of entries */ +
|
||||
BL_EXTENT_SIZE * count;
|
||||
PNFS_BLOCK_EXTENT_SIZE * count;
|
||||
}
|
||||
|
||||
static void ext_tree_free_commitdata(struct nfs4_layoutcommit_args *arg,
|
||||
|
@ -101,7 +101,7 @@ nfsd4_block_decode_layoutupdate(__be32 *p, u32 len, struct iomap **iomapp,
|
||||
}
|
||||
|
||||
nr_iomaps = be32_to_cpup(p++);
|
||||
expected = sizeof(__be32) + nr_iomaps * NFS4_BLOCK_EXTENT_SIZE;
|
||||
expected = sizeof(__be32) + nr_iomaps * PNFS_BLOCK_EXTENT_SIZE;
|
||||
if (len != expected) {
|
||||
dprintk("%s: extent array size mismatch: %u/%u\n",
|
||||
__func__, len, expected);
|
||||
|
@ -7,13 +7,6 @@
|
||||
struct iomap;
|
||||
struct xdr_stream;
|
||||
|
||||
enum pnfs_block_extent_state {
|
||||
PNFS_BLOCK_READWRITE_DATA = 0,
|
||||
PNFS_BLOCK_READ_DATA = 1,
|
||||
PNFS_BLOCK_INVALID_DATA = 2,
|
||||
PNFS_BLOCK_NONE_DATA = 3,
|
||||
};
|
||||
|
||||
struct pnfs_block_extent {
|
||||
struct nfsd4_deviceid vol_id;
|
||||
u64 foff;
|
||||
@ -21,14 +14,6 @@ struct pnfs_block_extent {
|
||||
u64 soff;
|
||||
enum pnfs_block_extent_state es;
|
||||
};
|
||||
#define NFS4_BLOCK_EXTENT_SIZE 44
|
||||
|
||||
enum pnfs_block_volume_type {
|
||||
PNFS_BLOCK_VOLUME_SIMPLE = 0,
|
||||
PNFS_BLOCK_VOLUME_SLICE = 1,
|
||||
PNFS_BLOCK_VOLUME_CONCAT = 2,
|
||||
PNFS_BLOCK_VOLUME_STRIPE = 3,
|
||||
};
|
||||
|
||||
/*
|
||||
* Random upper cap for the uuid length to avoid unbounded allocation.
|
||||
|
@ -547,6 +547,24 @@ enum pnfs_notify_deviceid_type4 {
|
||||
NOTIFY_DEVICEID4_DELETE = 1 << 2,
|
||||
};
|
||||
|
||||
enum pnfs_block_volume_type {
|
||||
PNFS_BLOCK_VOLUME_SIMPLE = 0,
|
||||
PNFS_BLOCK_VOLUME_SLICE = 1,
|
||||
PNFS_BLOCK_VOLUME_CONCAT = 2,
|
||||
PNFS_BLOCK_VOLUME_STRIPE = 3,
|
||||
};
|
||||
|
||||
enum pnfs_block_extent_state {
|
||||
PNFS_BLOCK_READWRITE_DATA = 0,
|
||||
PNFS_BLOCK_READ_DATA = 1,
|
||||
PNFS_BLOCK_INVALID_DATA = 2,
|
||||
PNFS_BLOCK_NONE_DATA = 3,
|
||||
};
|
||||
|
||||
/* on the wire size of a block layout extent */
|
||||
#define PNFS_BLOCK_EXTENT_SIZE \
|
||||
(7 * sizeof(__be32) + NFS4_DEVICEID4_SIZE)
|
||||
|
||||
#define NFL4_UFLG_MASK 0x0000003F
|
||||
#define NFL4_UFLG_DENSE 0x00000001
|
||||
#define NFL4_UFLG_COMMIT_THRU_MDS 0x00000002
|
||||
|
Loading…
Reference in New Issue
Block a user