Thread (120 messages) 120 messages, 12 authors, 2020-05-13

Re: [PATCH bpf-next 1/4] xdp: Support specifying expected existing program when attaching XDP

From: Jakub Kicinski <kuba@kernel.org>
Date: 2020-03-25 18:20:17
Also in: bpf

On Wed, 25 Mar 2020 11:06:38 -0700 Alexei Starovoitov wrote:
On Tue, Mar 24, 2020 at 07:15:54PM -0700, Jakub Kicinski wrote:
quoted
It is the way to configure XDP today, so it's only natural to
scrutinize the attempts to replace it.   
No one is replacing it.
You're blocking extensions to the existing API, that means that part 
of the API is frozen and is being replaced.
quoted
Also I personally don't think you'd see this much push back trying to
add bpf_link-based stuff to cls_bpf, that's an add-on. XDP is
integrated very fundamentally with the networking stack at this point.
  
quoted
Details are important and every case is different. So imo:
converting ethtool to netlink - great stuff.
converting netdev irq/queue management to netlink - great stuff too.
adding more netlink api for xdp - really bad idea.  
Why is it a bad idea?  
I explained in three other emails. tldr: lack of ownership.
Those came later, I think, thanks.

Fine, maybe one day someone will find the extension you're proposing
useful. To me that's not a justification to freeze the existing API
(you said "adding more netlink api for xdp - really bad idea").

Besides, if you look at Toke's libxdp work (which exists), what's the
ownership of the attached program? Whichever application touched it
last?

The whole auto-detachment thing may work nicely in cls_bpf and
sub-programs attached to the root XDP program, but it's a bit hard 
to imagine how its useful for the singleton root XDP program.
quoted
There are plenty things which will only be available over netlink.
Configuring the interface so installing the XDP program is possible
(disabling features, configuring queues etc.). Chances are user gets
the ifindex of the interface to attach to over netlink in the first
place. The queue configuration (which you agree belongs in netlink)
will definitely get more complex to allow REDIRECTs to work more
smoothly. AF_XDP needs all sort of netlink stuff.  
sure. that has nothing to do with ownership of attachment.
AFAICT the allure to John is the uniform API, and no need for netlink.
I was explaining how that's a bad goal to have.
quoted
Netlink gives us the notification mechanism which is how we solve
coordination across daemons (something that BPF subsystem is only 
now trying to solve).  
I don't care about notifications on attachment and no one is trying to
solve that as far as I can see. It's not a problem to solve in the first place.
Well, it's the existing solution to the "ownership" problem.
I think most people simply didn't know about it.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help