]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: txgbe: fix FDIR filter leak on remove
authorChenguang Zhao <zhaochenguang@kylinos.cn>
Mon, 13 Jul 2026 09:19:11 +0000 (17:19 +0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 21 Jul 2026 19:23:58 +0000 (12:23 -0700)
Perfect FDIR filters can be added while the interface is down and are
kept on the software list for later restore. unregister_netdev() only
calls ndo_stop when the device is up, so txgbe_fdir_filter_exit() in
txgbe_close() is skipped in that case and the filters are leaked on
driver remove. Free the filter list from txgbe_remove() as well.

Fixes: 4bdb441105dc ("net: txgbe: support Flow Director perfect filters")
Signed-off-by: Chenguang Zhao <zhaochenguang@kylinos.cn>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Link: https://patch.msgid.link/20260713091911.1614795-1-chenguang.zhao@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/wangxun/txgbe/txgbe_main.c

index 20c5a295c6c29682527d6c61eba9287685d7c22a..c277863baf67a224212d8ff59fe03eafb5943f80 100644 (file)
@@ -945,6 +945,7 @@ static void txgbe_remove(struct pci_dev *pdev)
        netdev = wx->netdev;
        wx_disable_sriov(wx);
        unregister_netdev(netdev);
+       txgbe_fdir_filter_exit(wx);
 
        timer_shutdown_sync(&wx->service_timer);
        cancel_work_sync(&wx->service_task);