kernel_samsung_a53x/drivers/net/hyperv
Shradha Gupta 033c865c81 hv_netvsc: Register VF in netvsc_probe if NET_DEVICE_REGISTER missed
[ Upstream commit 9cae43da9867412f8bd09aee5c8a8dc5e8dc3dc2 ]

If hv_netvsc driver is unloaded and reloaded, the NET_DEVICE_REGISTER
handler cannot perform VF register successfully as the register call
is received before netvsc_probe is finished. This is because we
register register_netdevice_notifier() very early( even before
vmbus_driver_register()).
To fix this, we try to register each such matching VF( if it is visible
as a netdevice) at the end of netvsc_probe.

Cc: stable@vger.kernel.org
Fixes: 85520856466e ("hv_netvsc: Fix race of register_netdevice_notifier and VF register")
Suggested-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: Shradha Gupta <shradhagupta@linux.microsoft.com>
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-18 23:19:52 +01:00
..
hyperv_net.h hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening 2024-11-18 23:19:52 +01:00
Kconfig hv_netvsc: rndis_filter needs to select NLS 2024-11-18 12:11:39 +01:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netvsc.c hv_netvsc: Wait for completion on request SWITCH_DATA_PATH 2024-11-18 23:19:52 +01:00
netvsc_bpf.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netvsc_drv.c hv_netvsc: Register VF in netvsc_probe if NET_DEVICE_REGISTER missed 2024-11-18 23:19:52 +01:00
netvsc_trace.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netvsc_trace.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rndis_filter.c hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening 2024-11-18 23:19:52 +01:00