From: Claudiu Manoil <[email protected]>
Date: Wed, 22 Jul 2020 17:40:12 +0300

> For ENETC ports that register an external MDIO bus,
> the bus doesn't get removed on the error bailout path
> of enetc_pf_probe().
> 
> This issue became much more visible after recent:
> commit 07095c025ac2 ("net: enetc: Use DT protocol information to set up the 
> ports")
> Before this commit, one could make probing fail on the error
> path only by having register_netdev() fail, which is unlikely.
> But after this commit, because it moved the enetc_of_phy_get()
> call up in the probing sequence, now we can trigger an mdiobus_free()
> bug just by forcing enetc_alloc_msix() to return error, i.e. with the
> 'pci=nomsi' kernel bootarg (since ENETC relies on MSI support to work),
> as the calltrace below shows:
 ...
> Fixes: ebfcb23d62ab ("enetc: Add ENETC PF level external MDIO support")
> Signed-off-by: Claudiu Manoil <[email protected]>

Applied and queued up for -stable, thanks.

Reply via email to