CVE-2026-80870

Source
https://cve.org/CVERecord?id=CVE-2026-80870
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80870.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-80870
Downstream
Published
2026-09-04T16:48:31.902Z
Modified
2026-09-06T03:47:00.950811983Z
Summary
drm/amdkfd: Validate CRIU-restored IDs before idr_alloc
Details

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

drm/amdkfd: Validate CRIU-restored IDs before idr_alloc

The KFD CRIU restore flow restores previously saved object IDs from userspace.

For event restore:

kfdcriurestoreevent() -> createsignalevent() / createotherevent() -> allocateeventnotificationslot() -> idralloc(..., *restoreid, *restore_id + 1, ...)

For BO restore:

criurestorememoryofgpu() -> idralloc(..., bopriv->idr_handle, ...)

In both cases, the restored ID comes from userspace-provided CRIU data.

idralloc() expects the ID range values to fit within signed int limits. If a restored ID is larger than INTMAX, it can trigger a WARN in the IDR layer.

A kernel WARN is undesirable because it prints a warning trace and may cause a panic or reboot on systems with paniconwarn enabled.

Smatch reported these paths as allowing unchecked userspace values to reach idr_alloc().

Add INT_MAX validation before using restored IDs in:

  • kfdcriurestore_event()
  • criurestorememoryofgpu()

If the restored ID is invalid, return -EINVAL.

This prevents invalid restore data from reaching the IDR layer and avoids WARN-triggering paths, while keeping valid restore behavior unchanged.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80870.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
40e8a766a761f7fdc8530347527b344fddf6f1a8
Fixed
f8687018f24037056692c1e93c7d96cc72889d5b
Fixed
89a75e3349c4fae28cbedc711bc924cbc6293da2
Fixed
085ea93bda71fee600cc12a17026598eb10dd1f9
Fixed
543ed0f61d56501cc585162da600bbedd7c08c0f
Fixed
cb6311f25a096621ac7ffd91b50d1bb1cfb63a96
Fixed
85043dd49c2f51a37b22618168e3ae59ab92f0d6

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80870.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.18.0
Fixed
6.1.178
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.145
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.97
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.40
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.1.5

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80870.json"