ltq_etop_probe() allocates the network device with alloc_etherdev_mq(), but the remove path does not call the matching free_netdev() after unregistering the device. The probe failure path releases the allocated network device with free_netdev(). However, after a successful probe, ltq_etop_remove() only unregisters the network device and leaves the allocation alive. Call free_netdev() after unregister_netdev() to release the network device during driver removal. This issue was found by manual code inspection. Fixes: 504d4721ee8e ("MIPS: Lantiq: Add ethernet driver") Cc: stable@vger.kernel.org Signed-off-by: Guangshuo Li --- drivers/net/ethernet/lantiq_etop.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/lantiq_etop.c b/drivers/net/ethernet/lantiq_etop.c index 83ce3bfefa5c..ecf2f3cbf4d9 100644 --- a/drivers/net/ethernet/lantiq_etop.c +++ b/drivers/net/ethernet/lantiq_etop.c @@ -711,6 +711,7 @@ static void ltq_etop_remove(struct platform_device *pdev) ltq_etop_hw_exit(dev); ltq_etop_mdio_cleanup(dev); unregister_netdev(dev); + free_netdev(dev); } } -- 2.43.0