In the Linux kernel, the following vulnerability has been resolved:
drm/i915/gt: Fix potential UAF by revoke of fence registers
CI has been sporadically reporting the following issue triggered by igt@i915_selftest@live@hangcheck on ADL-P and similar machines:
<6> [414.049203] i915: Running intel_hangcheck_live_selftests/igt_reset_evict_fence ... <6> [414.068804] i915 0000:00:02.0: [drm] GT0: GUC: submission enabled <6> [414.068812] i915 0000:00:02.0: [drm] GT0: GUC: SLPC enabled <3> [414.070354] Unable to pin Y-tiled fence; err:-4 <3> [414.071282] i915_vma_revoke_fence:301 GEM_BUG_ON(!i915_active_is_idle(&fence->active)) ... <4>[ 609.603992] ------------[ cut here ]------------ <2>[ 609.603995] kernel BUG at drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c:301! <4>[ 609.604003] invalid opcode: 0000 [#1] PREEMPT SMP NOPTI <4>[ 609.604006] CPU: 0 PID: 268 Comm: kworker/u64:3 Tainted: G U W 6.9.0-CI_DRM_14785-g1ba62f8cea9c+ #1 <4>[ 609.604008] Hardware name: Intel Corporation Alder Lake Client Platform/AlderLake-P DDR4 RVP, BIOS RPLPFWI1.R00.4035.A00.2301200723 01/20/2023 <4>[ 609.604010] Workqueue: i915 __i915_gem_free_work [i915] <4>[ 609.604149] RIP: 0010:i915_vma_revoke_fence+0x187/0x1f0 [i915] ... <4>[ 609.604271] Call Trace: <4>[ 609.604273] <TASK> ... <4>[ 609.604716] __i915_vma_evict+0x2e9/0x550 [i915] <4>[ 609.604852] __i915_vma_unbind+0x7c/0x160 [i915] <4>[ 609.604977] force_unbind+0x24/0xa0 [i915] <4>[ 609.605098] i915_vma_destroy+0x2f/0xa0 [i915] <4>[ 609.605210] __i915_gem_object_pages_fini+0x51/0x2f0 [i915] <4>[ 609.605330] __i915_gem_free_objects.isra.0+0x6a/0xc0 [i915] <4>[ 609.605440] process_scheduled_works+0x351/0x690 ...
In the past, there were similar failures reported by CI from other IGT tests, observed on other platforms.
Before commit 63baf4f3d587 ("drm/i915/gt: Only wait for GPU activity before unbinding a GGTT fence"), i915_vma_revoke_fence() was waiting for idleness of vma->active via fence_update(). That commit introduced vma->fence->active in order for the fence_update() to be able to wait selectively on that one instead of vma->active since only idleness of fence registers was needed. But then, another commit 0d86ee35097a ("drm/i915/gt: Make fence revocation unequivocal") replaced the call to fence_update() in i915_vma_revoke_fence() with only fence_write(), and also added that GEM_BUG_ON(!i915_active_is_idle(&fence->active)) in front. No justification was provided on why we might then expect idleness of vma->fence->active without first waiting on it.
The issue can be potentially caused by a race among revocation of fence registers on one side and sequential execution of signal callbacks invoked on completion of a request that was using them on the other, still processed in parallel to revocation of those fence registers. Fix it by waiting for idleness of vma->fence->active in i915_vma_revoke_fence().
(cherry picked from commit 24bb052d3dd499c5956abad5f7d8e4fd07da7fb1)
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-rt-modules-extraUpgrade kernel-rt-debugUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-develUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-modulesUpgrade kernel-debugUpgrade kernel-debug-coreUpgrade kernel-coreUpgrade kernel-debug-develUpgrade kernel-zfcpdump-develUpgrade kernel-cross-headersUpgrade perfUpgrade kernel-modules-extraUpgrade kernel-develUpgrade kernelUpgrade kernel-rt-debug-develUpgrade kernel-headersUpgrade python3-perfUpgrade kernel-rt-debug-coreUpgrade kernel-toolsUpgrade kernel-rtUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-zfcpdump-modulesUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-modulesUpgrade kernel-docUpgrade kernel-tools-libs-develUpgrade kernel-debug-modules-extraUpgrade bpftoolUpgrade kernel-abi-stablelists | Nov 7, 2024 | Jul 29, 2024 |
| Amazon Linux Ami 2 | — | Upgrade python-perf-debuginfoUpgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-headersUpgrade kernel-livepatch-5.10.223-211.872Upgrade kernel-tools-debuginfoUpgrade kernelUpgrade perfUpgrade kernel-tools-develUpgrade perf-debuginfoUpgrade kernel-livepatch-5.15.162-107.160Upgrade kernel-debuginfoUpgrade bpftoolUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-devel | Aug 28, 2024 | Jul 29, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-develUpgrade kernel-modules-extra-commonUpgrade kernel-headersUpgrade kernel-develUpgrade perf-debuginfoUpgrade perfUpgrade kernel-toolsUpgrade python3-perfUpgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade bpftoolUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debuginfoUpgrade kernel-modules-extraUpgrade bpftool-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-livepatch-6.1.97-104.177Upgrade python3-perf-debuginfoUpgrade kernel-libbpfUpgrade kernel-libbpf-staticUpgrade kernel-libbpf-devel | Feb 17, 2025 | Jul 29, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Aug 7, 2024 | Jul 29, 2024 |
| Oracle_linux | — | Upgrade kernel-uekUpgrade kernel | Oct 16, 2024 | Jul 29, 2024 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Nov 6, 2024 | Jul 29, 2024 |
| Rocky_linux | — | Upgrade kernel-debug-modulesUpgrade kernel-headersUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debug-kvmUpgrade kernel-modulesUpgrade kernel-tools-libs-develUpgrade kernel-debug-modules-extraUpgrade kernel-debug-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade bpftool-debuginfoUpgrade kernel-rt-debug-develUpgrade kernelUpgrade kernel-debuginfoUpgrade kernel-cross-headersUpgrade kernel-debug-develUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-tools-libsUpgrade kernel-rt-kvmUpgrade kernel-tools-debuginfoUpgrade kernel-debugUpgrade python3-perfUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-develUpgrade kernel-rtUpgrade perf-debuginfoUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-modules-extraUpgrade kernel-debug-coreUpgrade kernel-rt-coreUpgrade kernel-develUpgrade kernel-coreUpgrade kernel-toolsUpgrade kernel-rt-debugUpgrade python3-perf-debuginfoUpgrade perfUpgrade kernel-rt-modulesUpgrade bpftool | Nov 19, 2024 | Jul 29, 2024 |
| Suse | — | Upgrade ocfs2-kmp-rtUpgrade gfs2-kmp-64kbUpgrade kernel-docsUpgrade dtb-armUpgrade kernel-kvmsmall-develUpgrade kernel-develUpgrade kernel-rt_debug-vdsoUpgrade reiserfs-kmp-azureUpgrade kernel-symsUpgrade dlm-kmp-azureUpgrade kernel-debug-livepatch-develUpgrade kernel-default-livepatch-develUpgrade dtb-rockchipUpgrade dtb-hisiliconUpgrade dtb-renesasUpgrade kselftests-kmp-defaultUpgrade dtb-apmUpgrade dtb-amlogicUpgrade kernel-macrosUpgrade kernel-debug-develUpgrade dlm-kmp-defaultUpgrade gfs2-kmp-rtUpgrade kernel-syms-azureUpgrade kernel-default-base-rebuildUpgrade kernel-obs-qaUpgrade reiserfs-kmp-defaultUpgrade kernel-zfcpdumpUpgrade cluster-md-kmp-azureUpgrade kernel-rt-livepatchUpgrade dtb-qcomUpgrade kernel-rt-develUpgrade dtb-mediatekUpgrade cluster-md-kmp-rtUpgrade dtb-xilinxUpgrade kernel-devel-rtUpgrade kselftests-kmp-rtUpgrade kernel-default-vdsoUpgrade kernel-defaultUpgrade kernel-default-extraUpgrade kernel-64kb-develUpgrade kernel-debugUpgrade kernel-64kb-livepatch-develUpgrade kernel-devel-azureUpgrade ocfs2-kmp-azureUpgrade kernel-64kb-optionalUpgrade kernel-default-optionalUpgrade kernel-kvmsmallUpgrade cluster-md-kmp-defaultUpgrade kernel-azure-extraUpgrade dtb-broadcomUpgrade reiserfs-kmp-64kbUpgrade reiserfs-kmp-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade ocfs2-kmp-64kbUpgrade kernel-rt-extraUpgrade kernel-azure-livepatch-develUpgrade kernel-rt-vdsoUpgrade kernel-syms-rtUpgrade cluster-md-kmp-64kbUpgrade kernel-default-develUpgrade dtb-amazonUpgrade gfs2-kmp-defaultUpgrade kernel-azureUpgrade kernel-default-baseUpgrade kernel-azure-develUpgrade dtb-exynosUpgrade kernel-rt_debugUpgrade kernel-rtUpgrade kernel-default-livepatchUpgrade gfs2-kmp-azureUpgrade dtb-socionextUpgrade dtb-nvidiaUpgrade kernel-rt_debug-develUpgrade dtb-appleUpgrade kernel-azure-optionalUpgrade ocfs2-kmp-defaultUpgrade dtb-alteraUpgrade dtb-allwinnerUpgrade kernel-source-azureUpgrade kernel-sourceUpgrade kernel-rt-livepatch-develUpgrade kernel-64kb-extraUpgrade dtb-lgUpgrade dtb-amdUpgrade kernel-obs-buildUpgrade dlm-kmp-64kbUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-marvellUpgrade dtb-freescaleUpgrade dlm-kmp-rtUpgrade kernel-source-vanillaUpgrade kselftests-kmp-64kbUpgrade kernel-source-rtUpgrade dtb-caviumUpgrade dtb-sprdUpgrade kernel-rt-optionalUpgrade kernel-docs-htmlUpgrade kernel-debug-vdsoUpgrade kernel-azure-vdsoUpgrade kernel-64kbUpgrade kselftests-kmp-azure | Dec 5, 2025 | Nov 8, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1015-oracle-64kUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1016-azureUpgrade linux-image-6.8.0-48-lowlatency-64kUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1062-ibmUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1064-nvidia-lowlatencyUpgrade linux-image-5.15.0-1068-gcpUpgrade linux-image-6.8.0-1017-gcpUpgrade linux-image-6.8.0-1014-ibmUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-gcpUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-1017-azure-fdeUpgrade linux-image-6.8.0-1017-azureUpgrade linux-image-5.15.0-121-genericUpgrade linux-image-6.8.0-48-lowlatencyUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1066-gkeUpgrade linux-image-azure-cvmUpgrade linux-image-lowlatencyUpgrade linux-image-gke-5.15Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1018-awsUpgrade linux-image-5.15.0-1067-oracleUpgrade linux-image-azureUpgrade linux-image-oracle-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-5.15.0-1064-nvidiaUpgrade linux-image-6.8.0-1016-oemUpgrade linux-image-5.15.0-1064-intel-iotgUpgrade linux-image-5.15.0-1072-azure-fdeUpgrade linux-image-awsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-oem-20.04dUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-5.15.0-1052-gkeopUpgrade linux-image-6.8.0-1017-nvidia-64kUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-48-genericUpgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-oem-22.04bUpgrade linux-image-raspiUpgrade linux-image-gkeop-6.8Upgrade linux-image-ibmUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-1014-raspiUpgrade linux-image-kvmUpgrade linux-image-6.8.0-48-generic-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.8.0-1017-nvidiaUpgrade linux-image-5.15.0-121-generic-lpaeUpgrade linux-image-ibm-classicUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-5.15.0-1069-awsUpgrade linux-image-5.15.0-121-generic-64kUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-genericUpgrade linux-image-oem-22.04cUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-oem-24.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-1017-nvidia-lowlatencyUpgrade linux-image-6.8.0-1016-azure-fdeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1015-oracleUpgrade linux-image-intelUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oracleUpgrade linux-image-oem-20.04cUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1013-gkeUpgrade linux-image-5.15.0-1066-kvmUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-gkeUpgrade linux-image-nvidiaUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1017-nvidia-lowlatency-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.15.0-1072-azureUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.15.0-121-lowlatency-64kUpgrade linux-image-oem-20.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-gkeopUpgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-1016-gcpUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oem-22.04dUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-oem-22.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.15.0-121-lowlatencyUpgrade linux-image-gkeop-5.15Upgrade linux-image-intel-iotgUpgrade linux-image-generic-64kUpgrade linux-image-5.15.0-1062-raspi | Sep 16, 2024 | Jul 29, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 13, 2025 | Jul 29, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub