CVE-2021-47333

misc: alcor_pci: fix null-ptr-deref when there is no PCI bridge

State
Published
Severity
5.5 Medium
Published
May 21, 2024
Updated
May 11, 2026
Reserved
May 21, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

misc: alcor_pci: fix null-ptr-deref when there is no PCI bridge

There is an issue with the ASPM(optional) capability checking function. A device might be attached to root complex directly, in this case, bus->self(bridge) will be NULL, thus priv->parent_pdev is NULL. Since alcor_pci_init_check_aspm(priv->parent_pdev) checks the PCI link's ASPM capability and populate parent_cap_off, which will be used later by alcor_pci_aspm_ctrl() to dynamically turn on/off device, what we can do here is to avoid checking the capability if we are on the root complex. This will make pdev_cap_off 0 and alcor_pci_aspm_ctrl() will simply return when bring called, effectively disable ASPM for the device.

[ 1.246492] BUG: kernel NULL pointer dereference, address: 00000000000000c0 [ 1.248731] RIP: 0010:pci_read_config_byte+0x5/0x40 [ 1.253998] Call Trace: [ 1.254131] ? alcor_pci_find_cap_offset.isra.0+0x3a/0x100 [alcor_pci] [ 1.254476] alcor_pci_probe+0x169/0x2d5 [alcor_pci]

Scores

CVSSScoreVectorSource
3.15.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HCISA-ADP

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 4f556bc04e3c0de2f5c69adc9e9f2bcefcad079d to before d2639ffdcad463b358b6bef8645ff81715daffcbAffected
  • 4f556bc04e3c0de2f5c69adc9e9f2bcefcad079d to before 58f69684ba03e5b0e0a3ae844a845280c0f06309Affected
  • 4f556bc04e3c0de2f5c69adc9e9f2bcefcad079d to before 717cf5ae52322ddbdf3ac2c584b34c5970b0d174Affected
  • 4f556bc04e3c0de2f5c69adc9e9f2bcefcad079d to before 09d154990ca82d14aed2b72796f6c8845e2e605dAffected
  • 4f556bc04e3c0de2f5c69adc9e9f2bcefcad079d to before 3ce3e45cc333da707d4d6eb433574b990bcc26f5Affected
LinuxLinux
  • 5.0Affected
  • before 5.0Not affected
  • 5.4.134 through 5.4.*Not affected
  • 5.10.52 through 5.10.*Not affected
  • 5.12.19 through 5.12.*Not affected
  • 5.13.4 through 5.13.*Not affected
  • 5.14 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.