diff options
author | J. Bruce Fields <bfields@redhat.com> | 2012-08-21 21:22:11 (GMT) |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2012-08-21 21:40:10 (GMT) |
commit | af6d572134b012ca92c4efc8a2f1cadbe5d01064 (patch) | |
tree | 057465a1a9cdb39664d6660e172f7c81f762d850 | |
parent | f23abfdb94fda3108441530cb4a813088d3f9176 (diff) | |
download | linux-fsl-qoriq-af6d572134b012ca92c4efc8a2f1cadbe5d01064.tar.xz |
svcrpc: don't bother checking bad svc_addr_len result
None of the callers should see an unsupported address family (only one
of them even bothers to check for that case), so just check for the
buggy case in svc_addr_len and don't bother elsewhere.
Acked-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
-rw-r--r-- | include/linux/sunrpc/svc_xprt.h | 3 | ||||
-rw-r--r-- | net/sunrpc/svcsock.c | 2 |
2 files changed, 1 insertions, 4 deletions
diff --git a/include/linux/sunrpc/svc_xprt.h b/include/linux/sunrpc/svc_xprt.h index 73c7a68..193ddda 100644 --- a/include/linux/sunrpc/svc_xprt.h +++ b/include/linux/sunrpc/svc_xprt.h @@ -167,8 +167,7 @@ static inline size_t svc_addr_len(const struct sockaddr *sa) case AF_INET6: return sizeof(struct sockaddr_in6); } - - return 0; + BUG(); } static inline unsigned short svc_xprt_local_port(const struct svc_xprt *xprt) diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index 06ae8a7..406688b 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c @@ -601,8 +601,6 @@ static int svc_udp_recvfrom(struct svc_rqst *rqstp) return -EAGAIN; } len = svc_addr_len(svc_addr(rqstp)); - if (len == 0) - return -EAFNOSUPPORT; rqstp->rq_addrlen = len; if (skb->tstamp.tv64 == 0) { skb->tstamp = ktime_get_real(); |