On Sat, Oct 10, 2026 at 05:02:50PM -0400, Jamal Hadi Salim wrote: > The issue: > bpf_offload.py only exercises per-device ingress qdiscs today, so neither > the shared-block accept path nor the late-join replay is tested. > > The Fix: > Add a test for a device-bound SCHED_CLS program attached through a shared > block. It loads a dev-bound SCHED_CLS program for a netdevsim device and > checks: > - the program attaches to a shared block owned by its device, and the > filter teardown leaves the device unloaded; > - a block that also holds an independently backed device rejects the > attach, because the offload path broadcasts the program to all > members; > - an independently backed device that joins a populated block is not > loaded by the bind/replay path, and the driver's extack is asserted; > - a second port of the same netdevsim device (same offload device) is > accepted together with the bound port. > > The program is loaded from the existing sample_ret0.bpf.o with an explicit > `type classifier` override, so no new sample object is needed. > > Reviewed-by: Victor Nogueira <[email protected]> > Signed-off-by: Jamal Hadi Salim <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
