diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2007-04-25 20:55:53 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-04-26 01:25:16 -0400 |
commit | ea2ae17d6443abddc79480dc9f7af8feacabddc4 (patch) | |
tree | 2d6f48a5e4a40f761b5b510af9aac1fca55004cb /include/net | |
parent | badff6d01a8589a1c828b0bf118903ca38627f4e (diff) |
[SK_BUFF]: Introduce skb_transport_offset()
For the quite common 'skb->h.raw - skb->data' sequence.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/udplite.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/net/udplite.h b/include/net/udplite.h index d99df75fe54c..765032036657 100644 --- a/include/net/udplite.h +++ b/include/net/udplite.h | |||
@@ -101,14 +101,14 @@ static inline int udplite_sender_cscov(struct udp_sock *up, struct udphdr *uh) | |||
101 | 101 | ||
102 | static inline __wsum udplite_csum_outgoing(struct sock *sk, struct sk_buff *skb) | 102 | static inline __wsum udplite_csum_outgoing(struct sock *sk, struct sk_buff *skb) |
103 | { | 103 | { |
104 | int off, len, cscov = udplite_sender_cscov(udp_sk(sk), skb->h.uh); | 104 | int cscov = udplite_sender_cscov(udp_sk(sk), skb->h.uh); |
105 | __wsum csum = 0; | 105 | __wsum csum = 0; |
106 | 106 | ||
107 | skb->ip_summed = CHECKSUM_NONE; /* no HW support for checksumming */ | 107 | skb->ip_summed = CHECKSUM_NONE; /* no HW support for checksumming */ |
108 | 108 | ||
109 | skb_queue_walk(&sk->sk_write_queue, skb) { | 109 | skb_queue_walk(&sk->sk_write_queue, skb) { |
110 | off = skb->h.raw - skb->data; | 110 | const int off = skb_transport_offset(skb); |
111 | len = skb->len - off; | 111 | const int len = skb->len - off; |
112 | 112 | ||
113 | csum = skb_checksum(skb, off, (cscov > len)? len : cscov, csum); | 113 | csum = skb_checksum(skb, off, (cscov > len)? len : cscov, csum); |
114 | 114 | ||