Message ID | 20210216101628.2818524-1-olteanv@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 3af409ca278d4a8d50e91f9f7c4c33b175645cf3 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: enetc: fix destroyed phylink dereference during unbind | expand |
Context | Check | Description |
---|---|---|
netdev/cover_letter | success | Link |
netdev/fixes_present | success | Link |
netdev/patch_count | success | Link |
netdev/tree_selection | success | Clearly marked for net |
netdev/subject_prefix | success | Link |
netdev/cc_maintainers | fail | 1 blamed authors not CCed: ioana.cionei@nxp.com; 2 maintainers not CCed: ioana.cionei@nxp.com linux@armlinux.org.uk |
netdev/source_inline | success | Was 0 now: 0 |
netdev/verify_signedoff | success | Link |
netdev/module_param | success | Was 0 now: 0 |
netdev/build_32bit | success | Errors and warnings before: 0 this patch: 0 |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/verify_fixes | success | Link |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 17 lines checked |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 0 this patch: 0 |
netdev/header_inline | success | Link |
netdev/stable | success | Stable not CCed |
Hello: This patch was applied to netdev/net.git (refs/heads/master): On Tue, 16 Feb 2021 12:16:28 +0200 you wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The following call path suggests that calling unregister_netdev on an > interface that is up will first bring it down. > > enetc_pf_remove > -> unregister_netdev > -> unregister_netdevice_queue > -> unregister_netdevice_many > -> dev_close_many > -> __dev_close_many > -> enetc_close > -> enetc_stop > -> phylink_stop > > [...] Here is the summary with links: - [net] net: enetc: fix destroyed phylink dereference during unbind https://git.kernel.org/netdev/net/c/3af409ca278d You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html
diff --git a/drivers/net/ethernet/freescale/enetc/enetc_pf.c b/drivers/net/ethernet/freescale/enetc/enetc_pf.c index 3eb5f1375bd4..515c5b29d7aa 100644 --- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c +++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c @@ -1157,14 +1157,15 @@ static void enetc_pf_remove(struct pci_dev *pdev) struct enetc_ndev_priv *priv; priv = netdev_priv(si->ndev); - enetc_phylink_destroy(priv); - enetc_mdiobus_destroy(pf); if (pf->num_vfs) enetc_sriov_configure(pdev, 0); unregister_netdev(si->ndev); + enetc_phylink_destroy(priv); + enetc_mdiobus_destroy(pf); + enetc_free_msix(priv); enetc_free_si_resources(priv);