diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-31 12:26:50 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-31 12:26:50 -0400 |
commit | 24c3047095fa3954f114bfff2e37b8fcbb216396 (patch) | |
tree | a2263a4425d511ae619ca8b055705261dab9ec12 /include/linux | |
parent | 6581058f44533f9d45548bcfe986c125376859e9 (diff) | |
parent | 71cdd40fd498f12679070def668f6a4719ddbd1c (diff) |
Merge branch 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
* 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (28 commits)
pnfsblock: write_pagelist handle zero invalid extents
pnfsblock: note written INVAL areas for layoutcommit
pnfsblock: bl_write_pagelist
pnfsblock: bl_read_pagelist
pnfsblock: cleanup_layoutcommit
pnfsblock: encode_layoutcommit
pnfsblock: merge rw extents
pnfsblock: add extent manipulation functions
pnfsblock: bl_find_get_extent
pnfsblock: xdr decode pnfs_block_layout4
pnfsblock: call and parse getdevicelist
pnfsblock: merge extents
pnfsblock: lseg alloc and free
pnfsblock: remove device operations
pnfsblock: add device operations
pnfsblock: basic extent code
pnfsblock: use pageio_ops api
pnfsblock: add blocklayout Kconfig option, Makefile, and stubs
pnfs: cleanup_layoutcommit
pnfs: ask for layout_blksize and save it in nfs_server
...
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/nfs.h | 2 | ||||
-rw-r--r-- | include/linux/nfs4.h | 1 | ||||
-rw-r--r-- | include/linux/nfs_fs.h | 3 | ||||
-rw-r--r-- | include/linux/nfs_fs_sb.h | 4 | ||||
-rw-r--r-- | include/linux/nfs_xdr.h | 17 |
5 files changed, 23 insertions, 4 deletions
diff --git a/include/linux/nfs.h b/include/linux/nfs.h index f387919bbc59..8c6ee44914cb 100644 --- a/include/linux/nfs.h +++ b/include/linux/nfs.h | |||
@@ -29,6 +29,8 @@ | |||
29 | #define NFS_MNT_VERSION 1 | 29 | #define NFS_MNT_VERSION 1 |
30 | #define NFS_MNT3_VERSION 3 | 30 | #define NFS_MNT3_VERSION 3 |
31 | 31 | ||
32 | #define NFS_PIPE_DIRNAME "/nfs" | ||
33 | |||
32 | /* | 34 | /* |
33 | * NFS stats. The good thing with these values is that NFSv3 errors are | 35 | * NFS stats. The good thing with these values is that NFSv3 errors are |
34 | * a superset of NFSv2 errors (with the exception of NFSERR_WFLUSH which | 36 | * a superset of NFSv2 errors (with the exception of NFSERR_WFLUSH which |
diff --git a/include/linux/nfs4.h b/include/linux/nfs4.h index a3c4bc800dce..76f99e8714f3 100644 --- a/include/linux/nfs4.h +++ b/include/linux/nfs4.h | |||
@@ -566,6 +566,7 @@ enum { | |||
566 | NFSPROC4_CLNT_SECINFO_NO_NAME, | 566 | NFSPROC4_CLNT_SECINFO_NO_NAME, |
567 | NFSPROC4_CLNT_TEST_STATEID, | 567 | NFSPROC4_CLNT_TEST_STATEID, |
568 | NFSPROC4_CLNT_FREE_STATEID, | 568 | NFSPROC4_CLNT_FREE_STATEID, |
569 | NFSPROC4_CLNT_GETDEVICELIST, | ||
569 | }; | 570 | }; |
570 | 571 | ||
571 | /* nfs41 types */ | 572 | /* nfs41 types */ |
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h index 8b579beb6358..b96fb99072ff 100644 --- a/include/linux/nfs_fs.h +++ b/include/linux/nfs_fs.h | |||
@@ -99,9 +99,10 @@ struct nfs_open_context { | |||
99 | 99 | ||
100 | struct nfs_open_dir_context { | 100 | struct nfs_open_dir_context { |
101 | struct rpc_cred *cred; | 101 | struct rpc_cred *cred; |
102 | unsigned long attr_gencount; | ||
102 | __u64 dir_cookie; | 103 | __u64 dir_cookie; |
103 | __u64 dup_cookie; | 104 | __u64 dup_cookie; |
104 | int duped; | 105 | signed char duped; |
105 | }; | 106 | }; |
106 | 107 | ||
107 | /* | 108 | /* |
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h index 50a661f8b45a..82fdfc7987d6 100644 --- a/include/linux/nfs_fs_sb.h +++ b/include/linux/nfs_fs_sb.h | |||
@@ -132,7 +132,7 @@ struct nfs_server { | |||
132 | #endif | 132 | #endif |
133 | 133 | ||
134 | #ifdef CONFIG_NFS_V4 | 134 | #ifdef CONFIG_NFS_V4 |
135 | u32 attr_bitmask[2];/* V4 bitmask representing the set | 135 | u32 attr_bitmask[3];/* V4 bitmask representing the set |
136 | of attributes supported on this | 136 | of attributes supported on this |
137 | filesystem */ | 137 | filesystem */ |
138 | u32 cache_consistency_bitmask[2]; | 138 | u32 cache_consistency_bitmask[2]; |
@@ -145,6 +145,8 @@ struct nfs_server { | |||
145 | filesystem */ | 145 | filesystem */ |
146 | struct pnfs_layoutdriver_type *pnfs_curr_ld; /* Active layout driver */ | 146 | struct pnfs_layoutdriver_type *pnfs_curr_ld; /* Active layout driver */ |
147 | struct rpc_wait_queue roc_rpcwaitq; | 147 | struct rpc_wait_queue roc_rpcwaitq; |
148 | u32 pnfs_blksize; /* layout_blksize attr */ | ||
149 | void *pnfs_ld_data; /* per mount point data */ | ||
148 | 150 | ||
149 | /* the following fields are protected by nfs_client->cl_lock */ | 151 | /* the following fields are protected by nfs_client->cl_lock */ |
150 | struct rb_root state_owners; | 152 | struct rb_root state_owners; |
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index 5b115956abac..569ea5b76fda 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -122,6 +122,7 @@ struct nfs_fsinfo { | |||
122 | struct timespec time_delta; /* server time granularity */ | 122 | struct timespec time_delta; /* server time granularity */ |
123 | __u32 lease_time; /* in seconds */ | 123 | __u32 lease_time; /* in seconds */ |
124 | __u32 layouttype; /* supported pnfs layout driver */ | 124 | __u32 layouttype; /* supported pnfs layout driver */ |
125 | __u32 blksize; /* preferred pnfs io block size */ | ||
125 | }; | 126 | }; |
126 | 127 | ||
127 | struct nfs_fsstat { | 128 | struct nfs_fsstat { |
@@ -235,6 +236,17 @@ struct nfs4_layoutget { | |||
235 | gfp_t gfp_flags; | 236 | gfp_t gfp_flags; |
236 | }; | 237 | }; |
237 | 238 | ||
239 | struct nfs4_getdevicelist_args { | ||
240 | const struct nfs_fh *fh; | ||
241 | u32 layoutclass; | ||
242 | struct nfs4_sequence_args seq_args; | ||
243 | }; | ||
244 | |||
245 | struct nfs4_getdevicelist_res { | ||
246 | struct pnfs_devicelist *devlist; | ||
247 | struct nfs4_sequence_res seq_res; | ||
248 | }; | ||
249 | |||
238 | struct nfs4_getdeviceinfo_args { | 250 | struct nfs4_getdeviceinfo_args { |
239 | struct pnfs_device *pdev; | 251 | struct pnfs_device *pdev; |
240 | struct nfs4_sequence_args seq_args; | 252 | struct nfs4_sequence_args seq_args; |
@@ -257,12 +269,13 @@ struct nfs4_layoutcommit_res { | |||
257 | struct nfs_fattr *fattr; | 269 | struct nfs_fattr *fattr; |
258 | const struct nfs_server *server; | 270 | const struct nfs_server *server; |
259 | struct nfs4_sequence_res seq_res; | 271 | struct nfs4_sequence_res seq_res; |
272 | int status; | ||
260 | }; | 273 | }; |
261 | 274 | ||
262 | struct nfs4_layoutcommit_data { | 275 | struct nfs4_layoutcommit_data { |
263 | struct rpc_task task; | 276 | struct rpc_task task; |
264 | struct nfs_fattr fattr; | 277 | struct nfs_fattr fattr; |
265 | struct pnfs_layout_segment *lseg; | 278 | struct list_head lseg_list; |
266 | struct rpc_cred *cred; | 279 | struct rpc_cred *cred; |
267 | struct nfs4_layoutcommit_args args; | 280 | struct nfs4_layoutcommit_args args; |
268 | struct nfs4_layoutcommit_res res; | 281 | struct nfs4_layoutcommit_res res; |
@@ -943,7 +956,7 @@ struct nfs4_server_caps_arg { | |||
943 | }; | 956 | }; |
944 | 957 | ||
945 | struct nfs4_server_caps_res { | 958 | struct nfs4_server_caps_res { |
946 | u32 attr_bitmask[2]; | 959 | u32 attr_bitmask[3]; |
947 | u32 acl_bitmask; | 960 | u32 acl_bitmask; |
948 | u32 has_links; | 961 | u32 has_links; |
949 | u32 has_symlinks; | 962 | u32 has_symlinks; |