diff options
Diffstat (limited to 'include/linux/nfs_fs_sb.h')
-rw-r--r-- | include/linux/nfs_fs_sb.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h new file mode 100644 index 000000000000..fc51645d61ee --- /dev/null +++ b/include/linux/nfs_fs_sb.h | |||
@@ -0,0 +1,58 @@ | |||
1 | #ifndef _NFS_FS_SB | ||
2 | #define _NFS_FS_SB | ||
3 | |||
4 | #include <linux/list.h> | ||
5 | #include <linux/backing-dev.h> | ||
6 | |||
7 | /* | ||
8 | * NFS client parameters stored in the superblock. | ||
9 | */ | ||
10 | struct nfs_server { | ||
11 | struct rpc_clnt * client; /* RPC client handle */ | ||
12 | struct rpc_clnt * client_sys; /* 2nd handle for FSINFO */ | ||
13 | struct nfs_rpc_ops * rpc_ops; /* NFS protocol vector */ | ||
14 | struct backing_dev_info backing_dev_info; | ||
15 | int flags; /* various flags */ | ||
16 | unsigned int caps; /* server capabilities */ | ||
17 | unsigned int rsize; /* read size */ | ||
18 | unsigned int rpages; /* read size (in pages) */ | ||
19 | unsigned int wsize; /* write size */ | ||
20 | unsigned int wpages; /* write size (in pages) */ | ||
21 | unsigned int wtmult; /* server disk block size */ | ||
22 | unsigned int dtsize; /* readdir size */ | ||
23 | unsigned int bsize; /* server block size */ | ||
24 | unsigned int acregmin; /* attr cache timeouts */ | ||
25 | unsigned int acregmax; | ||
26 | unsigned int acdirmin; | ||
27 | unsigned int acdirmax; | ||
28 | unsigned int namelen; | ||
29 | char * hostname; /* remote hostname */ | ||
30 | struct nfs_fh fh; | ||
31 | struct sockaddr_in addr; | ||
32 | #ifdef CONFIG_NFS_V4 | ||
33 | /* Our own IP address, as a null-terminated string. | ||
34 | * This is used to generate the clientid, and the callback address. | ||
35 | */ | ||
36 | char ip_addr[16]; | ||
37 | char * mnt_path; | ||
38 | struct nfs4_client * nfs4_state; /* all NFSv4 state starts here */ | ||
39 | struct list_head nfs4_siblings; /* List of other nfs_server structs | ||
40 | * that share the same clientid | ||
41 | */ | ||
42 | u32 attr_bitmask[2];/* V4 bitmask representing the set | ||
43 | of attributes supported on this | ||
44 | filesystem */ | ||
45 | u32 acl_bitmask; /* V4 bitmask representing the ACEs | ||
46 | that are supported on this | ||
47 | filesystem */ | ||
48 | #endif | ||
49 | }; | ||
50 | |||
51 | /* Server capabilities */ | ||
52 | #define NFS_CAP_READDIRPLUS (1U << 0) | ||
53 | #define NFS_CAP_HARDLINKS (1U << 1) | ||
54 | #define NFS_CAP_SYMLINKS (1U << 2) | ||
55 | #define NFS_CAP_ACLS (1U << 3) | ||
56 | #define NFS_CAP_ATOMIC_OPEN (1U << 4) | ||
57 | |||
58 | #endif | ||