Re: How to orchestrate multiple XDP programs

"Brian G. Merrell" <[email protected]>
Newsgroups org.kernel.vger.xdp-newbies,org.kernel.vger.bpf
Message-ID <[email protected]>
On 21/02/11 12:18PM, Toke Høiland-Jørgensen wrote:
> "Brian G. Merrell" <[email protected]> writes:
> 
> > On 21/01/29 01:02PM, Toke Høiland-Jørgensen wrote:
> >> Hi Brian
> >> 
> >> I've posted a first draft of this protocol description here:
> >> https://github.com/xdp-project/xdp-tools/blob/master/lib/libxdp/protocol.org
> >> 
> >> Please take a look and let me know what you think. And do feel free to
> >> point out any places that are unclear, as I said this is a first draft,
> >> and I'm expecting it to evolve as I get feedback from you and others :)
> >> 
> >> -Toke
> >> 
> >
> > Thanks so much for doing this Toke. There's a lot of great information.
> > I did one read-through, and didn't notice any surprises compared to the
> > code that I've read so far.
> 
> Awesome! :)

A question for anyone (sorry if it's a silly one)...

I did a second read-through of the protocol this evening. I wanted to
take a deeper look at the function calls that are referenced. Some of
them are BPF syscalls, which should be relatively straightforward to
interface with from Go. However, some functions like
bpf_get_link_xdp_info() appear to reside deep in the bowels of libbpf.
I'd really like to avoid needing cgo bindings, so my question is if
there some way to 1) interface with these functions that I'm just not
seeing, or 2) achieve what's necessary for implementing libxdp by only
utilizing syscalls.

I'm definitely open to insight from anyone with experience in this area.

Thanks,
Brian
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.