Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a7483ec0 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by David S. Miller
Browse files

hv_netvsc: cancel subchannel setup before halting device



Block setup of multiple channels earlier in the teardown
process. This avoids possible races between halt and subchannel
initialization.

Suggested-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: default avatarStephen Hemminger <sthemmin@microsoft.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fcfb4a00
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1340,6 +1340,9 @@ void rndis_filter_device_remove(struct hv_device *dev,
{
	struct rndis_device *rndis_dev = net_dev->extension;

	/* Don't try and setup sub channels if about to halt */
	cancel_work_sync(&net_dev->subchan_work);

	/* Halt and release the rndis device */
	rndis_filter_halt_device(rndis_dev);