Re: [PATCH v9 bpf-next 10/14] bpf: add multi-buffer support to xdp copy helpers
flat view
From: John Fastabend <john.fastabend@gmail.com>
Date: 2021-06-24 14:28:41
Also in:
bpf
Eelco Chaudron wrote:
On 23 Jun 2021, at 1:49, John Fastabend wrote:quoted
Lorenzo Bianconi wrote:quoted
From: Eelco Chaudron <echaudro@redhat.com> This patch adds support for multi-buffer for the following helpers: - bpf_xdp_output() - bpf_perf_event_output() Signed-off-by: Eelco Chaudron <echaudro@redhat.com> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> ---Ah ok so at least xdp_output will work with all bytes. But this is getting close to having access into the frags so I think doing the last bit shouldn't be too hard?Guess you are talking about multi-buffer access in the XDP program? I did suggest an API a while back, https://lore.kernel.org/bpf/FD3E6E08-DE78-4FBA-96F6-646C93E88631@redhat.com/ (local) but I had/have not time to work on it. Guess the difficult part is to convince the verifier to allow the data to be accessed.
Ah great I think we had the same idea I called it xdp_pull_data() though. Whats the complication though it looks like it can be done by simply moving the data and data_end pointers around then marking them invalidated. This way the verifier knows the program needs to rewrite them. I can probably look more into next week. From my first glance it looks relatively straight forward to do now. I really would like to avoid yet another iteration of programs features I have to discover and somehow work around if we can get the helper into this series. If you really don't have time I can probably take a look early next week on an RFC for something like above helper. .John