]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: ethernet: mtk-star-emac: disable napi when connect and start PHY failed in mtk_s...
authorZhengchao Shao <shaozhengchao@huawei.com>
Mon, 7 Nov 2022 01:21:59 +0000 (09:21 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Nov 2022 09:03:58 +0000 (10:03 +0100)
[ Upstream commit b0c09c7f08c2467b2089bdf4adb2fbbc2464f4a8 ]

When failed to connect to and start PHY in mtk_star_enable() for opening
device, napi isn't disabled. When open mtk star device next time, it will
reports a invalid opcode issue. Fix it. Only be compiled, not be tested.

Fixes: 8c7bd5a454ff ("net: ethernet: mtk-star-emac: new driver")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Link: https://lore.kernel.org/r/20221107012159.211387-1-shaozhengchao@huawei.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mediatek/mtk_star_emac.c

index 3f0e5e64de50595cedfa4c54e79dcb71e947679e..57f4373b30ba1310176475c5f651c7fb7cd791d3 100644 (file)
@@ -1026,6 +1026,8 @@ static int mtk_star_enable(struct net_device *ndev)
        return 0;
 
 err_free_irq:
+       napi_disable(&priv->rx_napi);
+       napi_disable(&priv->tx_napi);
        free_irq(ndev->irq, ndev);
 err_free_skbs:
        mtk_star_free_rx_skbs(priv);