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]>


Reply via email to