4 #include <linux/list.h>
5 #include <linux/backing-dev.h>
10 * NFS client parameters stored in the superblock.
13 struct rpc_clnt * client; /* RPC client handle */
14 struct rpc_clnt * client_sys; /* 2nd handle for FSINFO */
15 struct rpc_clnt * client_acl; /* ACL RPC client handle */
16 struct nfs_rpc_ops * rpc_ops; /* NFS protocol vector */
17 struct nfs_iostats * io_stats; /* I/O statistics */
18 struct backing_dev_info backing_dev_info;
19 int flags; /* various flags */
20 unsigned int caps; /* server capabilities */
21 unsigned int rsize; /* read size */
22 unsigned int rpages; /* read size (in pages) */
23 unsigned int wsize; /* write size */
24 unsigned int wpages; /* write size (in pages) */
25 unsigned int wtmult; /* server disk block size */
26 unsigned int dtsize; /* readdir size */
27 unsigned int bsize; /* server block size */
28 unsigned int acregmin; /* attr cache timeouts */
29 unsigned int acregmax;
30 unsigned int acdirmin;
31 unsigned int acdirmax;
32 unsigned long retrans_timeo; /* retransmit timeout */
33 unsigned int retrans_count; /* number of retransmit tries */
35 char * hostname; /* remote hostname */
37 struct sockaddr_in addr;
39 unsigned long mount_time; /* when this fs was mounted */
41 /* Our own IP address, as a null-terminated string.
42 * This is used to generate the clientid, and the callback address.
46 struct nfs4_client * nfs4_state; /* all NFSv4 state starts here */
47 struct list_head nfs4_siblings; /* List of other nfs_server structs
48 * that share the same clientid
50 u32 attr_bitmask[2];/* V4 bitmask representing the set
51 of attributes supported on this
53 u32 acl_bitmask; /* V4 bitmask representing the ACEs
54 that are supported on this
59 /* Server capabilities */
60 #define NFS_CAP_READDIRPLUS (1U << 0)
61 #define NFS_CAP_HARDLINKS (1U << 1)
62 #define NFS_CAP_SYMLINKS (1U << 2)
63 #define NFS_CAP_ACLS (1U << 3)
64 #define NFS_CAP_ATOMIC_OPEN (1U << 4)