Thread (20 messages) 20 messages, 5 authors, 2026-03-30

Re: [PATCH net-next v3 3/6] net: bcmgenet: add basic XDP support (PASS/DROP)

From: Florian Fainelli <florian.fainelli@broadcom.com>
Date: 2026-03-30 22:06:11
Also in: bpf, lkml

On 3/30/26 15:01, Nicolai Buchwitz wrote:
On 30.3.2026 20:15, Mohsin Bashir wrote:
quoted
quoted
+static int bcmgenet_xdp_setup(struct net_device *dev,
+                  struct netdev_bpf *xdp)
+{
+    struct bcmgenet_priv *priv = netdev_priv(dev);
+    struct bpf_prog *old_prog;
+    struct bpf_prog *prog = xdp->prog;
+
+    if (prog && dev->mtu > PAGE_SIZE - GENET_RX_HEADROOM -
+        SKB_DATA_ALIGN(sizeof(struct skb_shared_info))) {
+        NL_SET_ERR_MSG_MOD(xdp->extack,
+                   "MTU too large for single-page XDP buffer");
+        return -EOPNOTSUPP;
+    }
The MTU check here is great. But I do not see support 
for .ndo_change_mtu. This would allow users to change MTU size AFTER 
the program is attached.
Good point. I had planned to add ndo_change_mtu in a follow-up series, 
but this leaves a gap where MTU can be changed while XDP is attached.

Options:
1. Add a minimal ndo_change_mtu to this series that only rejects MTU 
changes incompatible with XDP, default behavior otherwise
Option 1 seems to be the simplest yet getting you a path through merging 
XDP support.
2. Reject any MTU change while XDP is attached
3. Defer to the ndo_change_mtu follow-up series

Thoughts?

Thanks
Nicolai

-- 
Florian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help