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

PCI/IOV: Skip VF Resizable BAR restore on read error

sriov_restore_vf_rebar_state() uses the VF Resizable BAR Control register
to decide how many VF BARs to restore (nbars) and which VF BAR each
iteration addresses (bar_idx). bar_idx indexes into dev->sriov->barsz[],
which has only PCI_SRIOV_NUM_BARS (6) entries.

When a device does not respond, config reads typically return
PCI_ERROR_RESPONSE (~0). Both fields are 3 bits wide, so nbars and bar_idx
both evaluate to 7. The barsz[] access then goes out of bounds. UBSAN
reports this as:

UBSAN: array-index-out-of-bounds in drivers/pci/iov.c:948:51 index 7 is out of range for type 'resource_size_t [6]'

Observed on an NVIDIA RTX PRO 1000 GPU (GB207GLM) that stopped responding
during a failed GC6 power state exit. The subsequent pci_restore_state()
invoked sriov_restore_vf_rebar_state() while config reads returned
0xffffffff, triggering the splat.

Bail out if any VF Resizable BAR Control read returns PCI_ERROR_RESPONSE.
No further VF BARs are touched, which is safe because a config read that
returns PCI_ERROR_RESPONSE indicates the device is unreachable and
restoration is pointless. This mirrors the guard in
pci_restore_rebar_state().
Published: 2026-07-25
Score: 7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel bug in sriov_restore_vf_rebar_state causes an out-of-bounds array access when a device does not respond, leading to a kernel OOPS that can corrupt memory and crash the system. The fault occurs because PCI config reads return PCI_ERROR_RESPONSE (~0), causing both nbars and bar_idx to be calculated as 7, which exceeds the 6-entry barsz array. The result is a UBSAN array-index-out-of-bounds error that can compromise system stability.

Affected Systems

All Linux kernel versions prior to the commit that adds the boundary check are affected, including systems running NVIDIA RTX GPUs or other PCI/IOV devices that may experience config read failures. The issue exists across the Linux:Linux vendor family and can impact any host that relies on SR‑IOV for virtual function BAR restoration.

Risk and Exploitability

The CVSS score of 7 reflects medium severity, while the EPSS of less than 1% indicates a very low likelihood of exploitation. The vulnerability is not listed in CISA KEV. Exploitation would require an attacker to induce a device fault that causes config reads to return PCI_ERROR_RESPONSE, making remote exploitation unlikely; however, a local hardware failure can bring the kernel down, so patching is advised.

Generated by OpenCVE AI on August 2, 2026 at 12:34 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel release that includes the fix for the out-of-bounds array check in sriov_restore_vf_rebar_state.
  • Reboot the system so the patched kernel is in use.
  • If the VF device continues to exhibit unstable behavior after reboot, check for and apply vendor firmware updates or replace the hardware.

Generated by OpenCVE AI on August 2, 2026 at 12:34 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 01 Aug 2026 02:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-788

Thu, 30 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-787
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 27 Jul 2026 05:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-788

Mon, 27 Jul 2026 05:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:H'}


Sat, 25 Jul 2026 09:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: PCI/IOV: Skip VF Resizable BAR restore on read error sriov_restore_vf_rebar_state() uses the VF Resizable BAR Control register to decide how many VF BARs to restore (nbars) and which VF BAR each iteration addresses (bar_idx). bar_idx indexes into dev->sriov->barsz[], which has only PCI_SRIOV_NUM_BARS (6) entries. When a device does not respond, config reads typically return PCI_ERROR_RESPONSE (~0). Both fields are 3 bits wide, so nbars and bar_idx both evaluate to 7. The barsz[] access then goes out of bounds. UBSAN reports this as: UBSAN: array-index-out-of-bounds in drivers/pci/iov.c:948:51 index 7 is out of range for type 'resource_size_t [6]' Observed on an NVIDIA RTX PRO 1000 GPU (GB207GLM) that stopped responding during a failed GC6 power state exit. The subsequent pci_restore_state() invoked sriov_restore_vf_rebar_state() while config reads returned 0xffffffff, triggering the splat. Bail out if any VF Resizable BAR Control read returns PCI_ERROR_RESPONSE. No further VF BARs are touched, which is safe because a config read that returns PCI_ERROR_RESPONSE indicates the device is unreachable and restoration is pointless. This mirrors the guard in pci_restore_rebar_state().
Title PCI/IOV: Skip VF Resizable BAR restore on read error
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-05T12:42:18.339Z

Reserved: 2026-07-19T15:36:31.789Z

Link: CVE-2026-64460

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-07-25T10:17:31.193

Modified: 2026-07-27T05:16:52.540

Link: CVE-2026-64460

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-25T00:00:00Z

Links: CVE-2026-64460 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-02T12:45:06Z

Weaknesses