linux/drivers/net
Philo Lu 86a48a00ef virtio_net: Support dynamic rss indirection table size
When reading/writing virtio_net_ctrl_rss, we get the indirection table
size from vi->rss_indir_table_size, which is initialized in
virtnet_probe(). However, the actual size of indirection_table was set
as VIRTIO_NET_RSS_MAX_TABLE_LEN=128. This collision may cause issues if
the vi->rss_indir_table_size exceeds 128.

This patch instead uses dynamic indirection table, allocated with
vi->rss after vi->rss_indir_table_size initialized. And free it in
virtnet_remove().

In virtnet_commit_rss_command(), sgs for rss is initialized differently
with hash_report. So indirection_table is not used if !vi->has_rss, and
then we don't need to alloc indirection_table for hash_report only uses.

Fixes: c7114b1249 ("drivers/net/virtio_net: Added basic RSS support.")
Signed-off-by: Philo Lu <lulie@linux.alibaba.com>
Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Acked-by: Joe Damato <jdamato@fastly.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2024-11-07 12:40:10 +01:00
..
arcnet
bonding bonding: Fix unnecessary warnings and logs from bond_xdp_get_xmit_slave() 2024-09-24 15:19:50 +02:00
caif
can can: mcp251xfd: mcp251xfd_get_tef_len(): fix length calculation 2024-11-04 18:01:07 +01:00
dsa net: dsa: mv88e6xxx: support 4000ps cycle counter period 2024-10-24 12:57:46 +02:00
ethernet net: stmmac: Fix unbalanced IRQ wake disable warning on single irq case 2024-11-07 10:04:13 +01:00
fddi
fjes
hamradio TTY/Serial driver update for 6.12-rc1 2024-09-26 09:59:50 -07:00
hippi
hyperv hv_netvsc: Fix VF namespace also in synthetic NIC NETDEV_REGISTER event 2024-10-24 12:43:20 +02:00
ieee802154 Including fixes from ieee802154, bluetooth and netfilter. 2024-10-03 09:44:00 -07:00
ipa
ipvlan
mctp mctp i2c: handle NULL header address 2024-10-29 11:22:38 -07:00
mdio net: phy: mdio-bcm-unimac: Add BCM6846 support 2024-10-15 18:23:53 -07:00
netdevsim netdevsim: Add trailing zero to terminate the string in nsim_nexthop_bucket_activity_write() 2024-10-29 11:43:01 -07:00
pcs net: pcs: xpcs: fix the wrong register that was written back 2024-10-01 11:00:50 +02:00
phy net: phy: ti: add PHY_RST_AFTER_CLK_EN flag 2024-11-05 17:46:03 -08:00
plip net: plip: fix break; causing plip to never transmit 2024-10-19 16:06:55 -05:00
ppp ppp: fix ppp_async_encode() illegal access 2024-10-10 08:47:13 -07:00
pse-pd net: pse-pd: Fix out of bound for loop 2024-10-19 15:55:56 -05:00
slip slip: make slhc_remember() more robust against malicious packets 2024-10-10 09:06:32 -07:00
team
thunderbolt
usb net: usb: qmi_wwan: add Quectel RG650V 2024-10-29 11:49:29 -07:00
vmxnet3 vmxnet3: Fix packet corruption in vmxnet3_xdp_xmit_frame 2024-10-17 11:27:17 +02:00
vxlan vxlan: Handle error of rtnl_register_module(). 2024-10-10 15:39:35 +02:00
wan
wireguard
wireless wifi: iwlwifi: mvm: fix 6 GHz scan construction 2024-10-25 17:53:47 +02:00
wwan net: wwan: t7xx: Fix off-by-one error in t7xx_dpmaif_rx_buf_alloc() 2024-11-03 07:59:30 -08:00
xen-netback
amt.c
bareudp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-09-15 09:13:19 -07:00
dummy.c
eql.c
geneve.c
gtp.c gtp: allow -1 to be specified as file description from userspace 2024-10-29 11:24:08 -07:00
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c macsec: Fix use-after-free while sending the offloading packet 2024-10-28 16:13:50 -07:00
macvlan.c
macvtap.c
Makefile
mdio.c
mhi_net.c
mii.c
net_failover.c
netconsole.c net: netconsole: fix wrong warning 2024-10-09 19:42:43 -07:00
netkit.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-09-15 09:13:19 -07:00
nlmon.c
ntb_netdev.c
pfcp.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
tun.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
veth.c
virtio_net.c virtio_net: Support dynamic rss indirection table size 2024-11-07 12:40:10 +01:00
vrf.c vrf: revert "vrf: Remove unnecessary RCU-bh critical section" 2024-10-02 17:26:11 -07:00
vsockmon.c
xen-netfront.c