From: Chenguang Zhao rss_indir_user and rss_hkey_user are allocated in __set_rss_rxfh() when the user configures RSS via ethtool, but hinic_remove() never frees them. free_netdev() only releases the nic_dev structure itself, so the separately allocated buffers are leaked on driver unload. Free both buffers in hinic_remove() after unregister_netdev(). Fixes: 4fdc51bb4e92 ("hinic: add support for rss parameters with ethtool") Signed-off-by: Chenguang Zhao --- drivers/net/ethernet/huawei/hinic/hinic_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/huawei/hinic/hinic_main.c b/drivers/net/ethernet/huawei/hinic/hinic_main.c index 42f4792d255b..7d9c46004bcd 100644 --- a/drivers/net/ethernet/huawei/hinic/hinic_main.c +++ b/drivers/net/ethernet/huawei/hinic/hinic_main.c @@ -1433,6 +1433,9 @@ static void hinic_remove(struct pci_dev *pdev) hinic_free_intr_coalesce(nic_dev); + kfree(nic_dev->rss_indir_user); + kfree(nic_dev->rss_hkey_user); + hinic_port_del_mac(nic_dev, netdev->dev_addr, 0); hinic_hwdev_cb_unregister(nic_dev->hwdev, -- 2.25.1