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

Commit b0cf981d authored by Zhengchao Shao's avatar Zhengchao Shao Committed by Greg Kroah-Hartman
Browse files

net: mv643xx_eth: disable napi when init rxq or txq failed in mv643xx_eth_open()



[ Upstream commit f111606b63ff2282428ffbac0447c871eb957b6c ]

When failed to init rxq or txq in mv643xx_eth_open() for opening device,
napi isn't disabled. When open mv643xx_eth device next time, it will
trigger a BUG_ON() in napi_enable(). Compile tested only.

Fixes: 2257e05c ("mv643xx_eth: get rid of receive-side locking")
Signed-off-by: default avatarZhengchao Shao <shaozhengchao@huawei.com>
Link: https://lore.kernel.org/r/20221109025432.80900-1-shaozhengchao@huawei.com


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent f5776cdb
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2491,6 +2491,7 @@ static int mv643xx_eth_open(struct net_device *dev)
	for (i = 0; i < mp->rxq_count; i++)
		rxq_deinit(mp->rxq + i);
out:
	napi_disable(&mp->napi);
	free_irq(dev->irq, dev);

	return err;