summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Tucker <tom@ogc.us>2010-04-03 15:27:29 +0200
committerJ. Bruce Fields <bfields@citi.umich.edu>2010-04-05 18:10:22 +0200
commitbade732a2848e640482c1e99629a90e085d574dd (patch)
tree721ae2ac175ccbc15af2abb4fc288f352a453c73
parentLinux 2.6.34-rc3 (diff)
downloadlinux-bade732a2848e640482c1e99629a90e085d574dd.tar.xz
linux-bade732a2848e640482c1e99629a90e085d574dd.zip
svcrdma: RDMA support not yet compatible with RPC6
RPC6 requires that it be possible to create endpoints that listen exclusively for IPv4 or IPv6 connection requests. This is not currently supported by the RDMA API. This fixes a server RDMA regression introduced by 37498292a "NFSD: Create PF_INET6 listener in write_ports". Signed-off-by: Tom Tucker<tom@opengridcomputing.com> Tested-by: Steve Wise <swise@opengridcomputing.com> Reviewed-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
-rw-r--r--net/sunrpc/xprtrdma/svc_rdma_transport.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma_transport.c b/net/sunrpc/xprtrdma/svc_rdma_transport.c
index 3fa5751af0ec..4e6bbf91a570 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_transport.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_transport.c
@@ -678,7 +678,10 @@ static struct svc_xprt *svc_rdma_create(struct svc_serv *serv,
int ret;
dprintk("svcrdma: Creating RDMA socket\n");
-
+ if (sa->sa_family != AF_INET) {
+ dprintk("svcrdma: Address family %d is not supported.\n", sa->sa_family);
+ return ERR_PTR(-EAFNOSUPPORT);
+ }
cma_xprt = rdma_create_xprt(serv, 1);
if (!cma_xprt)
return ERR_PTR(-ENOMEM);