From: Lorenzo Bianconi <lorenzo@kernel.org>
To: andriin@fb.com
Cc: bpf@vger.kernel.org, netdev@vger.kernel.org,
Jesper Dangaard Brouer <brouer@redhat.com>,
David Miller <davem@davemloft.net>,
ast@kernel.org
Subject: xdp generic default option
Date: Wed, 19 Aug 2020 11:28:11 +0200 [thread overview]
Message-ID: <20200819092811.GA2420@lore-desk> (raw)
[-- Attachment #1: Type: text/plain, Size: 1286 bytes --]
Hi Andrii,
working on xdp multi-buff I figured out now xdp generic is the default choice
if not specified by userspace. In particular after commit 7f0a838254bd
("bpf, xdp: Maintain info on attached XDP BPF programs in net_device"), running
the command below, XDP will run in generic mode even if the underlay driver
support XDP in native mode:
$ip link set dev eth0 xdp obj prog.o
$ip link show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 xdpgeneric qdisc mq state UP mode DEFAULT
group default qlen 1024
link/ether f0:ad:4e:09:6b:57 brd ff:ff:ff:ff:ff:ff
prog/xdp id 1 tag 3b185187f1855c4c jited
Is it better to use xdpdrv as default choice if not specified by userspace?
doing something like:
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;
}
static bpf_op_t dev_xdp_bpf_op(struct net_device *dev, enum bpf_xdp_mode mode)
Regards,
Lorenzo
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next reply other threads:[~2020-08-19 9:28 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-19 9:28 Lorenzo Bianconi [this message]
2020-08-19 14:39 ` xdp generic default option Toke Høiland-Jørgensen
2020-08-19 19:07 ` Jakub Kicinski
2020-08-19 20:57 ` Andrii Nakryiko
2020-08-20 8:25 ` Jesper Dangaard Brouer
2020-08-20 14:00 ` David Ahern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200819092811.GA2420@lore-desk \
--to=lorenzo@kernel.org \
--cc=andriin@fb.com \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=brouer@redhat.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.