]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
eth: fbnic: increase FBNIC_HDR_BYTES_MIN from 128 to 256 bytes
authorBobby Eshleman <bobbyeshleman@meta.com>
Thu, 12 Feb 2026 01:00:42 +0000 (17:00 -0800)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 17 Feb 2026 09:40:14 +0000 (10:40 +0100)
Increase FBNIC_HDR_BYTES_MIN from 128 to 256 bytes. The previous minimum
was too small to guarantee that very long L2+L3+L4 headers always fit
within the header buffer. When EN_HDR_SPLIT is disabled and a packet
exceeds MAX_HEADER_BYTES, splitting occurs at that byte offset instead
of the header boundary, resulting in some of the header landing in the
payload page. The increased minimum ensures headers always fit with the
MAX_HEADER_BYTES cut off and land in the header page.

Fixes: 2b30fc01a6c7 ("eth: fbnic: Add support for HDS configuration")
Signed-off-by: Bobby Eshleman <bobbyeshleman@meta.com>
Acked-by: Mohsin Bashir <mohsin.bashr@gmail.com>
Link: https://patch.msgid.link/20260211-fbnic-tcp-hds-fixes-v1-2-55d050e6f606@meta.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/meta/fbnic/fbnic_txrx.h

index b9560103ab863caeb90e038577965371c61762ff..980965274079557e756c77d1c2dcc68db61ceb01 100644 (file)
@@ -66,7 +66,7 @@ struct fbnic_net;
        (4096 - FBNIC_RX_HROOM - FBNIC_RX_TROOM - FBNIC_RX_PAD)
 #define FBNIC_HDS_THRESH_DEFAULT \
        (1536 - FBNIC_RX_PAD)
-#define FBNIC_HDR_BYTES_MIN            128
+#define FBNIC_HDR_BYTES_MIN            256
 
 struct fbnic_pkt_buff {
        struct xdp_buff buff;