]> git.ipfire.org Git - thirdparty/linux.git/commit
ACPI: processor: Fix NULL-pointer dereference in acpi_processor_errata_piix4()
authorTuo Li <islituo@gmail.com>
Sun, 11 Jan 2026 16:32:14 +0000 (00:32 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 14 Jan 2026 16:31:22 +0000 (17:31 +0100)
commitf132e089fe89cadc2098991f0a3cb05c3f824ac6
treecec86982295e4dcd60e7c35a6295c9550b53ef91
parent24b09e849139f92bce0bb966f21409c95c60564a
ACPI: processor: Fix NULL-pointer dereference in acpi_processor_errata_piix4()

In acpi_processor_errata_piix4(), the pointer dev is first assigned an IDE
device and then reassigned an ISA device:

  dev = pci_get_subsys(..., PCI_DEVICE_ID_INTEL_82371AB, ...);
  dev = pci_get_subsys(..., PCI_DEVICE_ID_INTEL_82371AB_0, ...);

If the first lookup succeeds but the second fails, dev becomes NULL. This
leads to a potential null-pointer dereference when dev_dbg() is called:

  if (errata.piix4.bmisx)
    dev_dbg(&dev->dev, ...);

To prevent this, use two temporary pointers and retrieve each device
independently, avoiding overwriting dev with a possible NULL value.

Signed-off-by: Tuo Li <islituo@gmail.com>
[ rjw: Subject adjustment, added an empty code line ]
Link: https://patch.msgid.link/20260111163214.202262-1-islituo@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpi_processor.c