Linux: dpaa2-switch: fix handling of NAPI on the remove path
What fixes it
- 569df157eb874cb3b50554d73b89f31599397b42LinuxCVE List
- 6518f87771c8833e587bd9881346fa759651c2aeLinuxCVE 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:
dpaa2-switch: fix handling of NAPI on the remove path
All the NAPI instances for a DPSW device are attached to the first switch port's net_device but shared by all ports. The NAPI instances get disabled only once the last port goes down.
This causes an issue on the .remove() path where each port is unregistered and freed one at a time, causing the NAPI instances to be deleted even though they are not disabled.
In order to avoid this, split up the unregister_netdev() calls from the free_netdev() so that we make sure all ports go down before we attempt a deletion of NAPI instances. Also, make the netif_napi_del() explicit as it is on the .probe() path.
Text from CVE List
Affected versions 14
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before d39603e21087e9ef9cd125e5895cdc70b2eb154dCVE List
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before bd16f46d0796109d241d6311a7577f9956467c96CVE List
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before c996faba71fc465ad12c6d177bd1a9ad974f9ee8CVE List
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before 569df157eb874cb3b50554d73b89f31599397b42CVE List
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before 6518f87771c8833e587bd9881346fa759651c2aeCVE List
- Linuxaffected: 0b1b71370458860579831e77485883fcf2e8fbbe before e23d7c8c1d4ba435c457d7ffb2669175ec819b07CVE List
- Linuxaffected: 5.13CVE List
- Linuxunaffected: all versions before 5.13CVE List
- Linuxunaffected: 5.15.222 through 5.15.*CVE List
- Linuxunaffected: 6.1.189 through 6.1.*CVE List
- Linuxunaffected: 6.6.158 through 6.6.*CVE List
- Linuxunaffected: 6.12.111 through 6.12.*CVE List
- Linuxunaffected: 6.18.53 through 6.18.*CVE List
- Linuxunaffected: 7.2CVE List
References 6
- git.kernel.org/stable/c/d39603e21087e9ef9cd125e5895cdc70b2eb154dReferencevia CVE List
- git.kernel.org/stable/c/bd16f46d0796109d241d6311a7577f9956467c96Referencevia CVE List
- git.kernel.org/stable/c/c996faba71fc465ad12c6d177bd1a9ad974f9ee8Referencevia CVE List
- git.kernel.org/stable/c/569df157eb874cb3b50554d73b89f31599397b42Referencevia CVE List
- git.kernel.org/stable/c/6518f87771c8833e587bd9881346fa759651c2aeReferencevia CVE List
- git.kernel.org/stable/c/e23d7c8c1d4ba435c457d7ffb2669175ec819b07Referencevia CVE List