[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220328175336.10802-1-andrew@daynix.com>
Date: Mon, 28 Mar 2022 20:53:32 +0300
From: Andrew Melnychenko <andrew@...nix.com>
To: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
virtualization@...ts.linux-foundation.org
Cc: kuba@...nel.org, davem@...emloft.net, jasowang@...hat.com,
mst@...hat.com, yan@...nix.com, yuri.benditovich@...nix.com
Subject: [PATCH v5 0/4] RSS support for VirtioNet.
Virtio-net supports "hardware" RSS with toeplitz key.
Also, it allows receiving calculated hash in vheader
that may be used with RPS.
Added ethtools callbacks to manipulate RSS.
Technically hash calculation may be set only for
SRC+DST and SRC+DST+PORTSRC+PORTDST hashflows.
The completely disabling hash calculation for TCP or UDP
would disable hash calculation for IP.
RSS/RXHASH is disabled by default.
Changes since v4:
* Refactored code.
* Fixed sparse warnings, there would be warnings for using
restricted fields in vnet header structure.
Changes since v3:
* Moved hunks a bit.
* Added indirection table zero size check
for hash report only feature.
* Added virtio_skb_set_hash() helper instead of in-place routine.
Changes since v2:
* Fixed issue with calculating padded header length.
During review/tests, there was found an issue that
will crash the kernel if VIRTIO_NET_F_MRG_RXBUF
was not set. (thx to Jason Wang <jasowang@...hat.com>)
* Refactored the code according to review.
Changes since v1:
* Refactored virtnet_set_hashflow.
* Refactored virtio_net_ctrl_rss.
* Moved hunks between patches a bit.
Changes since rfc:
* Code refactored.
* Patches reformatted.
* Added feature validation.
Andrew (1):
drivers/net/virtio_net: Added RSS hash report control.
Andrew Melnychenko (3):
drivers/net/virtio_net: Fixed padded vheader to use v1 with hash.
drivers/net/virtio_net: Added basic RSS support.
drivers/net/virtio_net: Added RSS hash report.
drivers/net/virtio_net.c | 389 +++++++++++++++++++++++++++++++++++++--
1 file changed, 376 insertions(+), 13 deletions(-)
--
2.35.1
Powered by blists - more mailing lists