diff options
author | Tim Smith <tim@electronghost.co.uk> | 2014-01-26 11:39:31 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2014-01-26 11:45:04 +0000 |
commit | 1ea427359dde1573815e19c411ce08fdf0c42cfe (patch) | |
tree | dc194ef6de1b1ca893cb308de331f044c381c840 /net | |
parent | 24a9981ee9c7266fa171bbece62062bf78c4d246 (diff) | |
download | op-kernel-dev-1ea427359dde1573815e19c411ce08fdf0c42cfe.zip op-kernel-dev-1ea427359dde1573815e19c411ce08fdf0c42cfe.tar.gz |
af_rxrpc: Handle frames delivered from another VM
On input, CHECKSUM_PARTIAL should be treated the same way as
CHECKSUM_UNNECESSARY. See include/linux/skbuff.h
Signed-off-by: Tim Smith <tim@electronghost.co.uk>
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/rxrpc/ar-recvmsg.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/rxrpc/ar-recvmsg.c b/net/rxrpc/ar-recvmsg.c index 64cba2e..34b5490 100644 --- a/net/rxrpc/ar-recvmsg.c +++ b/net/rxrpc/ar-recvmsg.c @@ -180,7 +180,8 @@ int rxrpc_recvmsg(struct kiocb *iocb, struct socket *sock, if (copy > len - copied) copy = len - copied; - if (skb->ip_summed == CHECKSUM_UNNECESSARY) { + if (skb->ip_summed == CHECKSUM_UNNECESSARY || + skb->ip_summed == CHECKSUM_PARTIAL) { ret = skb_copy_datagram_iovec(skb, offset, msg->msg_iov, copy); } else { |