nfp: avoid oversized TSO headers with metadata prepend
In preparation for TSO over representors make sure the port id prepend will always fit in the frame. The current max header length is 255, which is ample, so assume worst case scenario of 8 byte prepend and save ourselves the conditionals. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Reviewed-by: Dirk van der Merwe <dirk.vandermerwe@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b54ad0eaad
commit
d7cc825225
|
@ -3284,7 +3284,10 @@ nfp_net_features_check(struct sk_buff *skb, struct net_device *dev,
|
|||
hdrlen = skb_inner_transport_header(skb) - skb->data +
|
||||
inner_tcp_hdrlen(skb);
|
||||
|
||||
if (unlikely(hdrlen > NFP_NET_LSO_MAX_HDR_SZ))
|
||||
/* Assume worst case scenario of having longest possible
|
||||
* metadata prepend - 8B
|
||||
*/
|
||||
if (unlikely(hdrlen > NFP_NET_LSO_MAX_HDR_SZ - 8))
|
||||
features &= ~NETIF_F_GSO_MASK;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue