Thread (6 messages) flat view 6 messages, 6 authors, 2020-08-20

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help