diff options
author | Weston Andros Adamson <dros@netapp.com> | 2011-05-31 18:48:56 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-07-12 13:40:26 -0400 |
commit | c9895cb69b07a4b17d8fdae26667f9a9fba5183b (patch) | |
tree | 743aab596a936684948fbdb550f5bdbb96381b9c /fs/nfs/nfs4filelayout.h | |
parent | 82c2c8b8616fa9e77264c53f0df483f74ac54613 (diff) |
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.h | 5 |
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 { | |||
49 | /* Individual ip address */ | 49 | /* Individual ip address */ |
50 | struct nfs4_pnfs_ds { | 50 | struct nfs4_pnfs_ds { |
51 | struct list_head ds_node; /* nfs4_pnfs_dev_hlist dev_dslist */ | 51 | struct list_head ds_node; /* nfs4_pnfs_dev_hlist dev_dslist */ |
52 | u32 ds_ip_addr; | 52 | struct sockaddr_storage ds_addr; |
53 | u32 ds_port; | 53 | size_t ds_addrlen; |
54 | char *ds_remotestr; /* human readable addr+port */ | ||
54 | struct nfs_client *ds_clp; | 55 | struct nfs_client *ds_clp; |
55 | atomic_t ds_count; | 56 | atomic_t ds_count; |
56 | }; | 57 | }; |