Linux: net: hisilicon: hisi_femac: Move setting of netops to fix crash
What fixes it
- 06ef5b084b150c538bc84148e5d710eee012413cLinuxCVE List
- 444889dfa27b54b39026e962464b1f8f9093e1eaLinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
net: hisilicon: hisi_femac: Move setting of netops to fix crash
hisi_femac_drv_probe() connects the PHY before dev->netdev_ops is assigned. phy_attach_direct() -> phy_link_topo_add_phy() reads dev->netdev_ops through netdev_need_ops_lock() since the commit in question, so probing crashes with a NULL pointer dereference when CONFIG_NET_SHAPER is enabled.
phy_link_topo_add_phy from phy_attach_direct+0xec/0x37c of_phy_get_and_connect from hisi_femac_drv_probe+0x1f4/0x558 Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Assign netdev_ops before the PHY attach, as was done for emac in commit 7c9f391ec89c ("net: emac: move setting of netops to fix crash").
Text from CVE List
Affected versions 6
- Linuxaffected: ded86da4bbb78cad74cecc368fee3ae3a296e2ca before 06ef5b084b150c538bc84148e5d710eee012413cCVE List
- Linuxaffected: ded86da4bbb78cad74cecc368fee3ae3a296e2ca before 444889dfa27b54b39026e962464b1f8f9093e1eaCVE List
- Linuxaffected: 7.2CVE List
- Linuxunaffected: all versions before 7.2CVE List
- Linuxunaffected: 7.2.13 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List