CVE-2026-98640

CVE-2026-98640

published October 18, 2026

CVSS
—
EPSS
0%
Percentile
10.0
In the wild
Unconfirmed
What it is

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

HID: amd_sfh: Validate PCI BAR size before mapping

The amd_sfh driver maps PCI BAR 2 using pcim_iomap_regions() and

subsequently accesses MMIO registers at offsets up to 0x10958 (e.g.,

AMD_P2C_MSG3 at 0x1068C). However, the driver never validates that the BAR

size is large enough to cover these accesses. If the driver is bound to a

device with a smaller BAR 2, this leads to an out-of-bounds memory access

and a page fault during the probe function.

For example, a page fault can occur when reading from privdata->mmio +

AMD_P2C_MSG3 in mp2_select_ops():

BUG: unable to handle page fault for address: ffffc9000390368c

PGD 100000067 P4D 100000067 PUD 1012c1067 PMD 105b64067 PTE 0

Oops: Oops: 0000 [#1] SMP KASAN NOPTI

RIP: 0010:readl arch/x86/include/asm/io.h:59 [inline]

RIP: 0010:mp2_select_ops drivers/hid/amd-sfh-hid/amd_sfh_pcie.c:282

[inline]

RIP: 0010:amd_mp2_pci_probe+0x337/0x5f0

drivers/hid/amd-sfh-hid/amd_sfh_pcie.c:487

Call Trace:

<TASK>

local_pci_probe drivers/pci/pci-driver.c:332 [inline]

pci_call_probe drivers/pci/pci-driver.c:394 [inline]

__pci_device_probe drivers/pci/pci-driver.c:455 [inline]

pci_device_probe+0x431/0xc90 drivers/pci/pci-driver.c:489

Fix this by verifying that the length of BAR 2 is at least 128KB before

attempting to map it. Since the maximum accessed offset is 0x10958, and PCI

BAR sizes are powers of 2, any legitimate hardware will have a BAR size of

at least 128KB.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00205 · 10.0th percentile
Published
2026-10-18T20:17Z
References (7)
EPSS history
Timeline
  • 20 OCT 03:34Z
    EPSS moved — → 0%
    epss
  • 18 OCT 15:20Z
    HID: amd_sfh: Validate PCI BAR size before mapping
    cvelistv5
  • 18 OCT 15:20Z
    HID: amd_sfh: Validate PCI BAR size before mapping
    cvelistv5