summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4filelayout.h
diff options
context:
space:
mode:
authorWeston Andros Adamson2011-06-01 00:48:56 +0200
committerTrond Myklebust2011-07-12 19:40:26 +0200
commitc9895cb69b07a4b17d8fdae26667f9a9fba5183b (patch)
tree743aab596a936684948fbdb550f5bdbb96381b9c /fs/nfs/nfs4filelayout.h
parentlockd: properly convert be32 values in debug messages (diff)
downloadkernel-qcow2-linux-c9895cb69b07a4b17d8fdae26667f9a9fba5183b.tar.gz
kernel-qcow2-linux-c9895cb69b07a4b17d8fdae26667f9a9fba5183b.tar.xz
kernel-qcow2-linux-c9895cb69b07a4b17d8fdae26667f9a9fba5183b.zip
NFS: pnfs IPv6 support
Handle ipv6 remote addresses from GETDEVICEINFO - supports netid "tcp" for ipv4 and "tcp6" for ipv6 as rfc 5665 specifies - added ds_remotestr to avoid having to handle different AFs in every dprintk - tested against pynfs 4.1 server, submitting ipv6 support patch to pynfs - tested with IPv6 disabled, it compiles cleanly and relies on rpc_pton to refuse to accept IPv6 addresses Signed-off-by: Weston Andros Adamson <dros@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4filelayout.h')
-rw-r--r--fs/nfs/nfs4filelayout.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/nfs/nfs4filelayout.h b/fs/nfs/nfs4filelayout.h
index cebe01e3795e..6c6a817710e5 100644
--- a/fs/nfs/nfs4filelayout.h
+++ b/fs/nfs/nfs4filelayout.h
@@ -49,8 +49,9 @@ enum stripetype4 {
/* Individual ip address */
struct nfs4_pnfs_ds {
struct list_head ds_node; /* nfs4_pnfs_dev_hlist dev_dslist */
- u32 ds_ip_addr;
- u32 ds_port;
+ struct sockaddr_storage ds_addr;
+ size_t ds_addrlen;
+ char *ds_remotestr; /* human readable addr+port */
struct nfs_client *ds_clp;
atomic_t ds_count;
};