CVE-2026-80870

Not scored yetLast modified Sep 4, 2026

Description

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:

kfd_criu_restore_event() -> create_signal_event() / create_other_event() -> allocate_event_notification_slot() -> idr_alloc(..., *restore_id, *restore_id + 1, ...)

For BO restore:

criu_restore_memory_of_gpu() -> idr_alloc(..., bo_priv->idr_handle, ...)

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

idr_alloc() expects the ID range values to fit within signed int limits. If a restored ID is larger than INT_MAX, 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 panic_on_warn enabled.

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

Add INT_MAX validation before using restored IDs in:

- kfd_criu_restore_event() - criu_restore_memory_of_gpu()

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.

Metrics

No CVSS score has been published yet.

Affected software

Source: the vendor's advisory (CNA). NVD analysis pending.

VendorProductVersions
LinuxLinux>= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < f8687018f24037056692c1e93c7d96cc72889d5b; >= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < 89a75e3349c4fae28cbedc711bc924cbc6293da2; >= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < 085ea93bda71fee600cc12a17026598eb10dd1f9; >= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < 543ed0f61d56501cc585162da600bbedd7c08c0f; >= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < cb6311f25a096621ac7ffd91b50d1bb1cfb63a96; >= 40e8a766a761f7fdc8530347527b344fddf6f1a8, < 85043dd49c2f51a37b22618168e3ae59ab92f0d6
LinuxLinux5.18

References

Timeline

Published
Sep 4, 2026
Last modified
Sep 4, 2026
NVD status
Received

Related CVEs from 2026

CVE-2026-80871In the Linux kernel, the following vulnerability has been resolved: crypto: xilinx-trng - Remove crypto_rng interface Implementing the cryCVE-2026-80872In the Linux kernel, the following vulnerability has been resolved: ALSA: hda/tas2781: Cancel async firmware request at unbind TAS2781 HDACVE-2026-80873In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: nv: Write ESR_EL2 for injected nested SError exceptions kvCVE-2026-80874In the Linux kernel, the following vulnerability has been resolved: arm64: dts: renesas: ironhide: Describe inline ECC carveouts The DBSC5CVE-2026-80875In the Linux kernel, the following vulnerability has been resolved: ipvs: use parsed transport offset in TCP state lookup TCP state handliCVE-2026-80876In the Linux kernel, the following vulnerability has been resolved: ring-buffer: Fix event length with forced 8-byte alignment When RB_FORCVE-2026-80877In the Linux kernel, the following vulnerability has been resolved: afs: Fix vllist leak Fix a leak of the new vllist in afs_update_cell()CVE-2026-80878In the Linux kernel, the following vulnerability has been resolved: afs: Fix leak of ungot volume Fix afs_lookup_volume_rcu() so that it dCVE-2026-80879In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix circular locking dependency in ocfs2_dio_end_io_write A cirCVE-2026-80885.5A weakness has been identified in OSGeo gdal up to 3.13.0dev-4. The affected element is the function GDfieldinfo of the file frmts/hdf4/hdf-CVE-2026-80880In the Linux kernel, the following vulnerability has been resolved: IB/mlx5: Properly support implicit ODP rereg_mr Due to all the child mCVE-2026-80881In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix buffer head management in ocfs2_read_blocks() In ocfs2_read
CVE-2026-80870: Unscored | Vulnix