net: add skb_[inner_]tcp_all_headers helpers
Most drivers use "skb_transport_offset(skb) + tcp_hdrlen(skb)" to compute headers length for a TCP packet, but others use more convoluted (but equivalent) ways. Add skb_tcp_all_headers() and skb_inner_tcp_all_headers() helpers to harmonize this a bit. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
04740c53ca
commit
504148fedb
@ -260,11 +260,9 @@ static int map_frag_to_bd(struct qede_tx_queue *txq,
|
||||
static u16 qede_get_skb_hlen(struct sk_buff *skb, bool is_encap_pkt)
|
||||
{
|
||||
if (is_encap_pkt)
|
||||
return (skb_inner_transport_header(skb) +
|
||||
inner_tcp_hdrlen(skb) - skb->data);
|
||||
else
|
||||
return (skb_transport_header(skb) +
|
||||
tcp_hdrlen(skb) - skb->data);
|
||||
return skb_inner_tcp_all_headers(skb);
|
||||
|
||||
return skb_tcp_all_headers(skb);
|
||||
}
|
||||
|
||||
/* +2 for 1st BD for headers and 2nd BD for headlen (if required) */
|
||||
|
Reference in New Issue
Block a user