On 2023/12/19 4:56, Song Liu wrote:
Hi Akihiko,
On Tue, Dec 12, 2023 at 12:05 AM Akihiko Odaki akihiko.odaki@daynix.com 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