Commit | Line | Data |
---|---|---|
1da177e4 LT |
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 */ | |
b7fa0554 | 13 | struct rpc_clnt * client_acl; /* ACL RPC client handle */ |
1da177e4 LT |
14 | struct nfs_rpc_ops * rpc_ops; /* NFS protocol vector */ |
15 | struct backing_dev_info backing_dev_info; | |
16 | int flags; /* various flags */ | |
17 | unsigned int caps; /* server capabilities */ | |
18 | unsigned int rsize; /* read size */ | |
19 | unsigned int rpages; /* read size (in pages) */ | |
20 | unsigned int wsize; /* write size */ | |
21 | unsigned int wpages; /* write size (in pages) */ | |
22 | unsigned int wtmult; /* server disk block size */ | |
23 | unsigned int dtsize; /* readdir size */ | |
24 | unsigned int bsize; /* server block size */ | |
25 | unsigned int acregmin; /* attr cache timeouts */ | |
26 | unsigned int acregmax; | |
27 | unsigned int acdirmin; | |
28 | unsigned int acdirmax; | |
29 | unsigned int namelen; | |
30 | char * hostname; /* remote hostname */ | |
31 | struct nfs_fh fh; | |
32 | struct sockaddr_in addr; | |
33 | #ifdef CONFIG_NFS_V4 | |
34 | /* Our own IP address, as a null-terminated string. | |
35 | * This is used to generate the clientid, and the callback address. | |
36 | */ | |
37 | char ip_addr[16]; | |
38 | char * mnt_path; | |
39 | struct nfs4_client * nfs4_state; /* all NFSv4 state starts here */ | |
40 | struct list_head nfs4_siblings; /* List of other nfs_server structs | |
41 | * that share the same clientid | |
42 | */ | |
43 | u32 attr_bitmask[2];/* V4 bitmask representing the set | |
44 | of attributes supported on this | |
45 | filesystem */ | |
46 | u32 acl_bitmask; /* V4 bitmask representing the ACEs | |
47 | that are supported on this | |
48 | filesystem */ | |
49 | #endif | |
50 | }; | |
51 | ||
52 | /* Server capabilities */ | |
53 | #define NFS_CAP_READDIRPLUS (1U << 0) | |
54 | #define NFS_CAP_HARDLINKS (1U << 1) | |
55 | #define NFS_CAP_SYMLINKS (1U << 2) | |
56 | #define NFS_CAP_ACLS (1U << 3) | |
57 | #define NFS_CAP_ATOMIC_OPEN (1U << 4) | |
58 | ||
59 | #endif |