Re: xdp generic default option
From: David Ahern <hidden>
Date: 2020-08-20 14:06:42
Also in:
bpf
On 8/20/20 2:25 AM, Jesper Dangaard Brouer wrote:
quoted
quoted
diff --git a/net/core/dev.c b/net/core/dev.c index a00aa737ce29..1f85880ee412 100644 --- a/net/core/dev.c +++ b/net/core/dev.c@@ -8747,9 +8747,9 @@ static enum bpf_xdp_mode dev_xdp_mode(u32 flags) { if (flags & XDP_FLAGS_HW_MODE) return XDP_MODE_HW; - if (flags & XDP_FLAGS_DRV_MODE) - return XDP_MODE_DRV; - return XDP_MODE_SKB; + if (flags & XDP_FLAGS_SKB_MODE) + return XDP_MODE_SKB; + return XDP_MODE_DRV; }I think the better way would be to choose XDP_MODE_DRV if ndo_bpf != NULL and XDP_MODE_SKB otherwise. That seems to be matching original behavior, no?Yes, but this silent fallback to XDP_MODE_SKB (generic-XDP) have cause a lot of support issues in the past. I wish we could change it. We already changed all the samples/bpf/ to ask for XDP_FLAGS_DRV_MODE, so they behave this way.
I would prefer the flags check in Lorenzo's proposed patch which is an explicit opt in to the SKB mode.