summaryrefslogtreecommitdiffstats
path: root/net/ipv4/ip_gre.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2013-02-20 08:26:06 +0100
committerJens Axboe <axboe@kernel.dk>2013-02-20 08:26:06 +0100
commitd4308febf3551d46884561b7c3fdd62ad3ca7ff2 (patch)
treeb8c48122df7c36761c6fb5d70647a09605892b9f /net/ipv4/ip_gre.c
parentc206c70924737db6836382c09ad2dacd04bb6204 (diff)
parent087ffecdaa1875cc683a7a5bc0695b3ebfce3bad (diff)
downloadblackbird-op-linux-d4308febf3551d46884561b7c3fdd62ad3ca7ff2.tar.gz
blackbird-op-linux-d4308febf3551d46884561b7c3fdd62ad3ca7ff2.zip
Merge branch 'stable/for-jens-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-3.9/drivers
Konrad writes: Please git pull the following branch: git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/for-jens-3.9 which has bug-fixes that did not make it in v3.8. They all are marked as material for the stable tree as well. There are two bug-fixes for the code that has been in there for some time (that is the Jan's fix and one of mine). And there are two bug-fixes for the persistent grant feature that debuted in v3.8 for xen blk[back|front]end.
Diffstat (limited to 'net/ipv4/ip_gre.c')
-rw-r--r--net/ipv4/ip_gre.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index 303012adf9e6..e81b1caf2ea2 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -963,8 +963,12 @@ static netdev_tx_t ipgre_tunnel_xmit(struct sk_buff *skb, struct net_device *dev
ptr--;
}
if (tunnel->parms.o_flags&GRE_CSUM) {
+ int offset = skb_transport_offset(skb);
+
*ptr = 0;
- *(__sum16 *)ptr = ip_compute_csum((void *)(iph+1), skb->len - sizeof(struct iphdr));
+ *(__sum16 *)ptr = csum_fold(skb_checksum(skb, offset,
+ skb->len - offset,
+ 0));
}
}
OpenPOWER on IntegriCloud