dpaa2-switch: prevent ZERO_SIZE_PTR dereference when num_ifs is zero (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.13 % · percentile 3 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Analyzed
Description
In the Linux kernel, the following vulnerability has been resolved: dpaa2-switch: prevent ZERO_SIZE_PTR dereference when num_ifs is zero The driver allocates arrays for ports, FDBs, and filter blocks using kcalloc() with ethsw->sw_attr.num_ifs as the element count. When the device reports zero interfaces (either due to hardware configuration or firmware issues), kcalloc(0, ...) returns ZERO_SIZE_PTR (0x10) instead of NULL. Later in dpaa2_switch_probe(), the NAPI initialization unconditionally accesses ethsw->ports[0]->netdev, which attempts to dereference ZERO_SIZE_PTR (address 0x10), resulting in a kernel panic. Add a check to ensure num_ifs is greater than zero after retrieving device attributes. This prevents the zero-sized allocations and subsequent invalid pointer dereference.
Weaknesses (CWE)
- CWE-476 — NULL Pointer Dereference
References
- https://git.kernel.org/stable/c/2fcccca88456b592bd668db13aa1d29ed257ca2b
- https://git.kernel.org/stable/c/80165ff16051448d6f840585ebe13f2400415df3
- https://git.kernel.org/stable/c/b97415c4362f739e25ec6f71012277086fabdf6f
- https://git.kernel.org/stable/c/4acc40db06ffd0fd92683505342b00c8a7394c60
- https://git.kernel.org/stable/c/155eb99aff2920153bf21217ae29565fff81e6af
- https://git.kernel.org/stable/c/ed48a84a72fefb20a82dd90a7caa7807e90c6f66
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
European references
- ENISA EUVD · EUVD-2026-5837
- GCVE · GCVE-0-2026-23206
CERT-FR advisories
- CERTFR-2026-AVI-0954 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0898 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0861 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0831 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0787 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0746 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0663 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0638 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0328 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0326 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0316 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0291 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0192 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.13 < 5.15.200cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.16 < 6.1.163cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.2 < 6.6.124cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.7 < 6.12.70cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 6.13 < 6.18.10cpe:2.3:o:linux:linux_kernel:6.19:rc1:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc2:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc3:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc5:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc6:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc7:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:6.19:rc8:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected 0b1b71370458860579831e77485883fcf2e8fbbe < 2fcccca88456b592bd668db13aa1d29ed257ca2b ; affected 0b1b71370458860579831e77485883fcf2e8fbbe < 80165ff16051448d6f840585ebe13f2400415df3 ; affected 0b1b71370458860579831e77485883fcf2e8fbbe < b97415c4362f739e25ec6f71012277086fabdf6f ; affected 0b1b71370458860579831e77485883fcf2e8fbbe < 4acc40db06ffd0fd92683505342b00c8a7394c60 ; affected 0b1b71370458860579831e77485883fcf2e8fbbe < 155eb99aff2920153bf21217ae29565fff81e6af ; affected 0b1b71370458860579831e77485883fcf2e8fbbe < ed48a84a72fefb20a82dd90a7caa7807e90c6f66 |
| Linux · Linux | affected 5.13 ; unaffected 0 < 5.13 ; unaffected 5.15.200 ≤ 5.15.* ; unaffected 6.1.163 ≤ 6.1.* ; unaffected 6.6.124 ≤ 6.6.* ; unaffected 6.12.70 ≤ 6.12.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |