diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-11-11 05:50:22 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-11-11 05:50:22 -0500 |
commit | f85272a97825d4a67098a8ad70fa5efb55e4847a (patch) | |
tree | e55b38e21b45213269057417032db4440e8f5eed /net/sunrpc/socklib.c | |
parent | 1c72d8d90da3b29540c3c281a3e0b743ee6b6f74 (diff) | |
parent | 5e04e7fe774794b837e1d3897e6b96ae2d06679a (diff) |
Merge branch 'master'
Diffstat (limited to 'net/sunrpc/socklib.c')
-rw-r--r-- | net/sunrpc/socklib.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/sunrpc/socklib.c b/net/sunrpc/socklib.c index 8f97e90f36c..eb330d4f66d 100644 --- a/net/sunrpc/socklib.c +++ b/net/sunrpc/socklib.c @@ -6,6 +6,9 @@ * Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de> */ +#include <linux/compiler.h> +#include <linux/netdevice.h> +#include <linux/skbuff.h> #include <linux/types.h> #include <linux/pagemap.h> #include <linux/udp.h> @@ -165,6 +168,8 @@ int csum_partial_copy_to_xdr(struct xdr_buf *xdr, struct sk_buff *skb) return -1; if ((unsigned short)csum_fold(desc.csum)) return -1; + if (unlikely(skb->ip_summed == CHECKSUM_HW)) + netdev_rx_csum_fault(skb->dev); return 0; no_checksum: if (xdr_partial_copy_from_skb(xdr, 0, &desc, skb_read_bits) < 0) |