summary refs log tree commit diff
path: root/net/802
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2006-03-20 22:43:56 -0800
committerDavid S. Miller <davem@davemloft.net>2006-03-20 22:43:56 -0800
commitcbb042f9e1292434e3cacb90e67d8d381aeac5a9 (patch)
treecc42f42232e56b68111cfebdc175197d8607bdd7 /net/802
parentecba320f2e95c9a0c35011d1ecb1db4419980536 (diff)
downloadlinux-cbb042f9e1292434e3cacb90e67d8d381aeac5a9.tar.gz
[NET]: Replace skb_pull/skb_postpull_rcsum with skb_pull_rcsum
We're now starting to have quite a number of places that do skb_pull
followed immediately by an skb_postpull_rcsum.  We can merge these two
operations into one function with skb_pull_rcsum.  This makes sense
since most pull operations on receive skb's need to update the
checksum.

I've decided to make this out-of-line since it is fairly big and the
fast path where hardware checksums are enabled need to call
csum_partial anyway.

Since this is a brand new function we get to add an extra check on the
len argument.  As it is most callers of skb_pull ignore its return
value which essentially means that there is no check on the len
argument.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/802')
-rw-r--r--net/802/psnap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/802/psnap.c b/net/802/psnap.c
index 34e42968b477..97c95eec79ed 100644
--- a/net/802/psnap.c
+++ b/net/802/psnap.c
@@ -61,8 +61,7 @@ static int snap_rcv(struct sk_buff *skb, struct net_device *dev,
 		/* Pass the frame on. */
 		u8 *hdr = skb->data;
 		skb->h.raw  += 5;
-		skb_pull(skb, 5);
-		skb_postpull_rcsum(skb, hdr, 5);
+		skb_pull_rcsum(skb, 5);
 		rc = proto->rcvfunc(skb, dev, &snap_packet_type, orig_dev);
 	} else {
 		skb->sk = NULL;