On 2023/12/19 4:56, Song Liu wrote:
Hi Akihiko,
On Tue, Dec 12, 2023 at 12:05 AM Akihiko Odaki <akihiko.odaki@xxxxxxxxxx> wrote:
[...]
---
I'm working on a new feature that aids virtio-net implementations using
tuntap virtual network device. You can see [1] for details, but
basically it's to extend BPF_PROG_TYPE_SOCKET_FILTER to report four more
bytes.
AFAICT, [1] adds a new program type, which is really hard to ship. However,
you mentioned it is basically "extend BPF_PROG_TYPE_SOCKET_FILTER to
report four more bytes", which confuses me.
Can we achieve the same goal by extending BPF_PROG_TYPE_SOCKET_FILTER
(without adding a new program type)? Does this require extending
__sk_buff, which
is also not an option any more?
It is certainly possible to achieve the same result by extending
BPF_PROG_TYPE_SOCKET_FILTER.
It is not required to extend __sk_buff; we can repurpose the cb member.
But I think such an API will be error-prone than new members dedicated
for this particular purpose.
Regards,
Akihiko Odaki