In the Linux kernel, the following vulnerability has been resolved:
drm: Don't unref the same fb many times by mistake due to deadlock handling
If we get a deadlock after the fb lookup in drm_mode_page_flip_ioctl() we proceed to unref the fb and then retry the whole thing from the top. But we forget to reset the fb pointer back to NULL, and so if we then get another error during the retry, before the fb lookup, we proceed the unref the same fb again without having gotten another reference. The end result is that the fb will (eventually) end up being freed while it's still in use.
Reset fb to NULL once we've unreffed it to avoid doing it again until we've done another fb lookup.
This turned out to be pretty easy to hit on a DG2 when doing async flips (and CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y). The first symptom I saw that drm_closefb() simply got stuck in a busy loop while walking the framebuffer list. Fortunately I was able to convince it to oops instead, and from there it was easier to track down the culprit.
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 bpftoolUpgrade kernel-tools-libsUpgrade kernel-rt-develUpgrade kernel-rt-debug-coreUpgrade kernel-debug-coreUpgrade kernel-rt-debug-develUpgrade kernel-rt-debug-modulesUpgrade perfUpgrade kernel-cross-headersUpgrade kernel-zfcpdump-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-debug-kvmUpgrade kernel-develUpgrade kernel-rt-coreUpgrade kernel-coreUpgrade python3-perfUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-kvmUpgrade kernel-debug-develUpgrade kernelUpgrade kernel-modules-extraUpgrade kernel-zfcpdumpUpgrade kernel-modulesUpgrade kernel-rt-debugUpgrade kernel-debugUpgrade kernel-debug-modulesUpgrade kernel-rt-modulesUpgrade kernel-zfcpdump-coreUpgrade kernel-abi-stablelistsUpgrade kernel-debug-modules-extraUpgrade kernel-headersUpgrade kernel-tools-libs-develUpgrade kernel-toolsUpgrade kernel-rtUpgrade kernel-zfcpdump-modulesUpgrade kernel-docUpgrade kernel-rt-modules-extra | Aug 12, 2024 | Mar 11, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernel-tools-develUpgrade perf-debuginfoUpgrade perfUpgrade kernel-tools-debuginfoUpgrade python-perfUpgrade bpftool-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-toolsUpgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-headersUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-5.15.149-99.161Upgrade bpftoolUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-4.14.343-259.562Upgrade kernelUpgrade kernel-livepatch-5.10.210-201.852 | Jun 11, 2024 | Mar 11, 2024 |
| Amazon_linux_2023 | — | Upgrade bpftool-debuginfoUpgrade bpftoolUpgrade kernel-modules-extraUpgrade kernel-toolsUpgrade kernel-livepatch-6.1.77-99.164Upgrade kernel-tools-debuginfoUpgrade kernel-libbpfUpgrade python3-perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-headersUpgrade kernel-develUpgrade python3-perfUpgrade kernel-libbpf-develUpgrade perfUpgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-modules-extra-commonUpgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade perf-debuginfo | Feb 17, 2025 | Feb 29, 2024 |
| Debian | — | Upgrade linux | May 8, 2024 | Mar 11, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-tools-libsUpgrade python3-perfUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade kernel-tools | May 13, 2024 | Mar 11, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade python3-perfUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade bpftool | Jun 26, 2024 | Mar 11, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-tools-libsUpgrade bpftoolUpgrade python3-perfUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade kernel | Jul 1, 2024 | Mar 11, 2024 |
| Huawei Euleros 2_0_sp8 | — | Upgrade bpftoolUpgrade kernelUpgrade kernel-develUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade python-perfUpgrade python3-perfUpgrade perfUpgrade kernel-headers | Jul 23, 2024 | Mar 11, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel | Jul 17, 2024 | Mar 11, 2024 |
| Oracle_linux | — | Upgrade kernel | Aug 16, 2024 | Feb 29, 2024 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Aug 12, 2024 | Mar 11, 2024 |
| Rocky_linux | — | Upgrade kernel-tools-debuginfoUpgrade kernel-modules-extraUpgrade kernel-rt-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-debug-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-toolsUpgrade kernel-rt-debugUpgrade kernel-rt-develUpgrade kernel-rt-debuginfoUpgrade kernel-develUpgrade kernel-debug-coreUpgrade kernel-debug-modulesUpgrade kernel-tools-libsUpgrade perfUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-modulesUpgrade python3-perfUpgrade python3-perf-debuginfoUpgrade kernel-rt-kvmUpgrade bpftoolUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rtUpgrade bpftool-debuginfoUpgrade kernel-rt-debug-develUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-cross-headersUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-modules-extraUpgrade kernel-debugUpgrade kernelUpgrade kernel-tools-libs-develUpgrade kernel-debug-develUpgrade kernel-coreUpgrade kernel-modulesUpgrade perf-debuginfoUpgrade kernel-headers | Aug 22, 2024 | Mar 11, 2024 |
| Suse | — | Upgrade kernel-develUpgrade kernel-symsUpgrade kernel-rtUpgrade kernel-default-develUpgrade dtb-caviumUpgrade ocfs2-kmp-defaultUpgrade kselftests-kmp-azureUpgrade kernel-azure-develUpgrade kernel-default-extraUpgrade dtb-exynosUpgrade kernel-rt-livepatchUpgrade kernel-rt-vdsoUpgrade kernel-devel-rtUpgrade kernel-sourceUpgrade dtb-qcomUpgrade kernel-azure-optionalUpgrade kernel-default-optionalUpgrade dlm-kmp-64kbUpgrade dtb-amlogicUpgrade dtb-alteraUpgrade kernel-rt_debug-develUpgrade ocfs2-kmp-64kbUpgrade kernel-64kb-livepatch-develUpgrade kernel-azure-livepatch-develUpgrade cluster-md-kmp-azureUpgrade dtb-rockchipUpgrade kernel-kvmsmallUpgrade cluster-md-kmp-rtUpgrade dtb-mediatekUpgrade dtb-xilinxUpgrade dtb-apmUpgrade kernel-64kbUpgrade kernel-macrosUpgrade kernel-default-vdsoUpgrade kernel-devel-azureUpgrade kernel-obs-qaUpgrade kernel-default-base-rebuildUpgrade kernel-source-azureUpgrade gfs2-kmp-azureUpgrade kselftests-kmp-64kbUpgrade ocfs2-kmp-rtUpgrade dtb-amazonUpgrade dtb-lgUpgrade kernel-zfcpdumpUpgrade gfs2-kmp-64kbUpgrade kernel-default-livepatchUpgrade kernel-kvmsmall-develUpgrade kernel-syms-azureUpgrade kernel-rt-develUpgrade gfs2-kmp-rtUpgrade reiserfs-kmp-azureUpgrade dtb-freescaleUpgrade kernel-64kb-optionalUpgrade kernel-rt_debug-livepatch-develUpgrade dlm-kmp-rtUpgrade kernel-docsUpgrade kernel-docs-htmlUpgrade kernel-azure-baseUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-rt-livepatch-develUpgrade dtb-renesasUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade kernel-debug-livepatch-develUpgrade kernel-kvmsmall-vdsoUpgrade kernel-source-rtUpgrade kernel-debug-develUpgrade kernel-rt-optionalUpgrade kernel-default-livepatch-develUpgrade dtb-armUpgrade reiserfs-kmp-defaultUpgrade dtb-amdUpgrade dtb-sprdUpgrade kernel-azureUpgrade cluster-md-kmp-defaultUpgrade dtb-socionextUpgrade dtb-nvidiaUpgrade kernel-default-baseUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-rtUpgrade kernel-obs-buildUpgrade kernel-default-manUpgrade kernel-defaultUpgrade gfs2-kmp-defaultUpgrade kernel-syms-rtUpgrade dtb-broadcomUpgrade kernel-64kb-develUpgrade reiserfs-kmp-64kbUpgrade kernel-64kb-extraUpgrade kernel-azure-extraUpgrade dlm-kmp-azureUpgrade kernel-rt_debug-vdsoUpgrade kernel-rt_debugUpgrade kernel-rt-extraUpgrade kernel-debugUpgrade dtb-allwinnerUpgrade dtb-hisiliconUpgrade kselftests-kmp-rtUpgrade kernel-debug-vdsoUpgrade dtb-appleUpgrade kernel-azure-vdsoUpgrade dtb-marvellUpgrade kernel-source-vanillaUpgrade kselftests-kmp-default | Apr 18, 2024 | Mar 11, 2024 |
| Ubuntu | — | Upgrade linux-image-6.5.0-1022-azureUpgrade linux-image-azure-lts-18.04Upgrade linux-image-5.4.0-1112-kvmUpgrade linux-image-4.15.0-1176-awsUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oracle-64kUpgrade linux-image-4.15.0-1159-kvmUpgrade linux-image-5.15.0-1054-ibmUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oem-20.04Upgrade linux-image-6.5.0-1022-gcpUpgrade linux-image-azure-lts-22.04Upgrade linux-image-oem-20.04bUpgrade linux-image-5.4.0-181-lowlatencyUpgrade linux-image-oem-20.04dUpgrade linux-image-5.4.0-1036-iotUpgrade linux-image-gkeUpgrade linux-image-5.4.0-1124-awsUpgrade linux-image-oem-22.04bUpgrade linux-image-kvmUpgrade linux-image-5.4.0-1043-xilinx-zynqmpUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.15.0-1054-raspiUpgrade linux-image-6.5.0-1018-raspiUpgrade linux-image-6.5.0-1024-oracleUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-aws-lts-20.04Upgrade linux-image-aws-lts-18.04Upgrade linux-image-intel-iotgUpgrade linux-image-5.4.0-181-generic-lpaeUpgrade linux-image-oem-22.04dUpgrade linux-image-4.15.0-1184-azureUpgrade linux-image-gcpUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-5.15.0-1044-gkeopUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1061-awsUpgrade linux-image-gcp-lts-18.04Upgrade linux-image-6.5.0-41-genericUpgrade linux-image-6.5.0-41-generic-64kUpgrade linux-image-raspi2Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.4.0-1128-gcpUpgrade linux-image-5.15.0-1063-azure-fdeUpgrade linux-image-oem-22.04cUpgrade linux-image-starfiveUpgrade linux-image-5.4.0-181-genericUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-oem-20.04cUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-gkeopUpgrade linux-image-5.15.0-1059-oracleUpgrade linux-image-6.5.0-1024-oemUpgrade linux-image-laptop-23.10Upgrade linux-image-5.4.0-1129-azureUpgrade linux-image-5.15.0-106-generic-64kUpgrade linux-image-5.15.0-1054-nvidiaUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.4.0-1091-gkeopUpgrade linux-image-gkeop-5.4Upgrade linux-image-generic-64kUpgrade linux-image-intelUpgrade linux-image-azureUpgrade linux-image-4.15.0-1169-gcpUpgrade linux-image-5.15.0-106-genericUpgrade linux-image-raspiUpgrade linux-image-5.15.0-1058-intel-iotgUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-nvidia-6.5Upgrade linux-image-oem-osp1Upgrade linux-image-5.15.0-106-lowlatencyUpgrade linux-image-5.15.0-1059-gcpUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.5.0-1015-starfiveUpgrade linux-image-virtual-hwe-16.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oracleUpgrade linux-image-4.15.0-1138-oracleUpgrade linux-image-generic-lpaeUpgrade linux-image-5.4.0-1071-ibmUpgrade linux-image-5.15.0-106-lowlatency-64kUpgrade linux-image-6.5.0-41-lowlatency-64kUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-gke-5.15Upgrade linux-image-oem-22.04aUpgrade linux-image-aws-lts-22.04Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-ibmUpgrade linux-image-5.15.0-106-generic-lpaeUpgrade linux-image-4.15.0-232-lowlatencyUpgrade linux-image-6.5.0-1021-nvidiaUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-6.5.0-1017-laptopUpgrade linux-image-generic-hwe-16.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-awsUpgrade linux-image-aws-hweUpgrade linux-image-oem-22.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-4.15.0-232-genericUpgrade linux-image-6.5.0-1022-azure-fdeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-1063-azureUpgrade linux-image-6.5.0-1021-awsUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1058-gkeUpgrade linux-image-lowlatencyUpgrade linux-image-bluefieldUpgrade linux-image-6.5.0-41-lowlatencyUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.4.0-1123-oracleUpgrade linux-image-azure-cvmUpgrade linux-image-nvidia-64k-6.5Upgrade linux-image-oemUpgrade linux-image-azure-lts-20.04Upgrade linux-image-virtualUpgrade linux-image-6.5.0-1021-nvidia-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.4.0-1108-raspiUpgrade linux-image-5.15.0-1058-kvmUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.4.0-1084-bluefieldUpgrade linux-image-nvidiaUpgrade linux-image-5.15.0-1057-intel-iotgUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.5.0-1024-oracle-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gcp-lts-20.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-azure-fdeUpgrade linux-image-5.15.0-1054-nvidia-lowlatencyUpgrade linux-image-generic | May 17, 2024 | Mar 11, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Feb 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