Re: [PATCH net-next v8 3/6] tun: Introduce virtio-net hash feature

From: Jakub Kicinski
Date: Thu Mar 06 2025 - 20:56:15 EST


On Thu, 06 Mar 2025 18:56:33 +0900 Akihiko Odaki wrote:
> Hash reporting
> ==============
>
> Allow the guest to reuse the hash value to make receive steering
> consistent between the host and guest, and to save hash computation.
>
> RSS
> ===
>
> RSS is a receive steering algorithm that can be negotiated to use with
> virtio_net. Conventionally the hash calculation was done by the VMM.
> However, computing the hash after the queue was chosen defeats the
> purpose of RSS.
>
> Another approach is to use eBPF steering program. This approach has
> another downside: it cannot report the calculated hash due to the
> restrictive nature of eBPF steering program.
>
> Introduce the code to perform RSS to the kernel in order to overcome
> thse challenges. An alternative solution is to extend the eBPF steering
> program so that it will be able to report to the userspace, but I didn't
> opt for it because extending the current mechanism of eBPF steering
> program as is because it relies on legacy context rewriting, and
> introducing kfunc-based eBPF will result in non-UAPI dependency while
> the other relevant virtualization APIs such as KVM and vhost_net are
> UAPIs.

drivers/net/tap.c:1056:2: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
1056 | case SIOCGIFHWADDR:
| ^
drivers/net/tap.c:1056:2: note: insert '__attribute__((fallthrough));' to silence this warning
1056 | case SIOCGIFHWADDR:
| ^
| __attribute__((fallthrough));
drivers/net/tap.c:1056:2: note: insert 'break;' to avoid fall-through
1056 | case SIOCGIFHWADDR:
| ^
| break;
--
pw-bot: cr