In the Linux kernel, the following vulnerability has been resolved:
vfio/platform: Create persistent IRQ handlers
The vfio-platform SET_IRQS ioctl currently allows loopback triggering of an interrupt before a signaling eventfd has been configured by the user, which thereby allows a NULL pointer dereference.
Rather than register the IRQ relative to a valid trigger, register all IRQs in a disabled state in the device open path. This allows mask operations on the IRQ to nest within the overall enable state governed by a valid eventfd signal. This decouples @masked, protected by the @locked spinlock from @trigger, protected via the @igate mutex.
In doing so, it's guaranteed that changes to @trigger cannot race the IRQ handlers because the IRQ handler is synchronously disabled before modifying the trigger, and loopback triggering of the IRQ via ioctl is safe due to serialization with trigger changes via igate.
For compatibility, request_irq() failures are maintained to be local to the SET_IRQS ioctl rather than a fatal error in the open device path. This allows, for example, a userspace driver with polling mode support to continue to work regardless of moving the request_irq() call site. This necessarily blocks all SET_IRQS access to the failed index.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-toolsUpgrade python-perfUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python-perf-debuginfoUpgrade kernel-develUpgrade perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-5.10.215-203.850Upgrade perfUpgrade kernel-debuginfoUpgrade kernel-tools-develUpgrade kernelUpgrade bpftoolUpgrade kernel-headers | Apr 10, 2025 | Apr 5, 2024 |
| Debian | — | Upgrade linux | Apr 15, 2024 | Apr 5, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernelUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-tools | Jul 16, 2024 | Apr 5, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernelUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade python3-perfUpgrade bpftool | Jun 26, 2024 | Apr 5, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-abi-stablelistsUpgrade kernelUpgrade bpftoolUpgrade kernel-toolsUpgrade python3-perfUpgrade kernel-tools-libs | Oct 8, 2024 | Apr 5, 2024 |
| Huawei Euleros 2_0_sp8 | — | Upgrade kernel-develUpgrade perfUpgrade python3-perfUpgrade kernel-toolsUpgrade kernel-headersUpgrade python-perfUpgrade kernelUpgrade bpftoolUpgrade kernel-tools-libs | Jul 23, 2024 | Apr 5, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-toolsUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernel | Jul 17, 2024 | Apr 5, 2024 |
| Suse | — | Upgrade kernel-kvmsmall-vdsoUpgrade kernel-source-vanillaUpgrade kernel-azure-optionalUpgrade dtb-socionextUpgrade dtb-renesasUpgrade gfs2-kmp-rtUpgrade kernel-azure-extraUpgrade kernel-devel-azureUpgrade kernel-sourceUpgrade kernel-64kbUpgrade dtb-lgUpgrade kernel-rt-vdsoUpgrade kernel-zfcpdumpUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-caviumUpgrade reiserfs-kmp-defaultUpgrade dtb-freescaleUpgrade kernel-debug-develUpgrade kernel-azure-vdsoUpgrade kernel-default-manUpgrade dtb-alteraUpgrade dtb-appleUpgrade dtb-allwinnerUpgrade kernel-kvmsmallUpgrade dtb-exynosUpgrade ocfs2-kmp-azureUpgrade kernel-64kb-livepatch-develUpgrade kernel-default-extraUpgrade kernel-azureUpgrade cluster-md-kmp-azureUpgrade kernel-source-rtUpgrade dtb-amazonUpgrade kernel-source-azureUpgrade kernel-rt-optionalUpgrade kernel-azure-livepatch-develUpgrade kernel-kvmsmall-develUpgrade kernel-64kb-optionalUpgrade dtb-hisiliconUpgrade kernel-symsUpgrade kernel-syms-azureUpgrade kernel-rt-livepatch-develUpgrade gfs2-kmp-64kbUpgrade dlm-kmp-64kbUpgrade kernel-docs-htmlUpgrade gfs2-kmp-azureUpgrade kernel-default-develUpgrade dtb-marvellUpgrade kernel-default-livepatchUpgrade kernel-rt_debugUpgrade kernel-default-vdsoUpgrade ocfs2-kmp-rtUpgrade kernel-azure-baseUpgrade kernel-debugUpgrade kernel-rt_debug-develUpgrade ocfs2-kmp-defaultUpgrade reiserfs-kmp-64kbUpgrade kselftests-kmp-azureUpgrade dtb-amdUpgrade dtb-broadcomUpgrade kselftests-kmp-64kbUpgrade ocfs2-kmp-64kbUpgrade kernel-default-baseUpgrade kernel-devel-rtUpgrade kernel-debug-livepatch-develUpgrade dlm-kmp-azureUpgrade dtb-rockchipUpgrade dtb-qcomUpgrade kernel-rt-develUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-develUpgrade dtb-xilinxUpgrade kernel-rt-livepatchUpgrade kernel-defaultUpgrade kernel-syms-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade gfs2-kmp-defaultUpgrade dtb-mediatekUpgrade dtb-apmUpgrade reiserfs-kmp-azureUpgrade reiserfs-kmp-rtUpgrade dtb-sprdUpgrade dtb-armUpgrade dlm-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-rtUpgrade kernel-obs-qaUpgrade kernel-docsUpgrade kernel-azure-develUpgrade kernel-default-optionalUpgrade kernel-macrosUpgrade kernel-develUpgrade cluster-md-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade dtb-amlogicUpgrade kernel-debug-vdsoUpgrade kernel-default-base-rebuildUpgrade dtb-nvidiaUpgrade cluster-md-kmp-rtUpgrade kernel-obs-buildUpgrade kselftests-kmp-defaultUpgrade kernel-rt-extraUpgrade kernel-64kb-extraUpgrade dlm-kmp-rt | Jul 10, 2024 | Apr 5, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1008-gcpUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibm-classicUpgrade linux-image-generic-64kUpgrade linux-image-gkeopUpgrade linux-image-aws-lts-22.04Upgrade linux-image-5.4.0-1128-awsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-1063-oracleUpgrade linux-image-5.15.0-1060-nvidiaUpgrade linux-image-ibmUpgrade linux-image-intelUpgrade linux-image-raspiUpgrade linux-image-oem-20.04bUpgrade linux-image-gkeop-5.4Upgrade linux-image-azureUpgrade linux-image-5.4.0-189-lowlatencyUpgrade linux-image-5.15.0-1065-awsUpgrade linux-image-6.8.0-1005-raspiUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-6.8.0-1006-ibmUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-oem-20.04cUpgrade linux-image-5.4.0-1112-raspiUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1062-kvmUpgrade linux-image-6.8.0-35-generic-64kUpgrade linux-image-5.15.0-116-generic-lpaeUpgrade linux-image-oemUpgrade linux-image-genericUpgrade linux-image-5.15.0-116-lowlatency-64kUpgrade linux-image-5.15.0-1064-gcpUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.4.0-1132-gcpUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-35-genericUpgrade linux-image-azure-fdeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.4.0-1116-kvmUpgrade linux-image-aws-lts-20.04Upgrade linux-image-6.8.0-1008-azureUpgrade linux-image-lowlatencyUpgrade linux-image-nvidiaUpgrade linux-image-gke-5.15Upgrade linux-image-5.4.0-189-genericUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-5.15.0-116-lowlatencyUpgrade linux-image-6.8.0-35-lowlatencyUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.4.0-189-generic-lpaeUpgrade linux-image-6.8.0-1006-oracleUpgrade linux-image-gcpUpgrade linux-image-5.4.0-1088-bluefieldUpgrade linux-image-intel-iotgUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-5.4.0-1095-gkeopUpgrade linux-image-5.15.0-1068-azure-fdeUpgrade linux-image-oem-osp1Upgrade linux-image-awsUpgrade linux-image-5.4.0-1075-ibmUpgrade linux-image-5.15.0-1068-azureUpgrade linux-image-raspi2Upgrade linux-image-raspi-hwe-18.04Upgrade linux-image-gkeUpgrade linux-image-kvmUpgrade linux-image-5.15.0-1065-gcpUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-oracleUpgrade linux-image-5.15.0-1060-intel-iotgUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-generic-lpaeUpgrade linux-image-azure-cvmUpgrade linux-image-5.4.0-1127-oracleUpgrade linux-image-6.8.0-1009-awsUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.8.0-35-lowlatency-64kUpgrade linux-image-5.4.0-1133-azureUpgrade linux-image-5.4.0-1040-iotUpgrade linux-image-raspi-nolpaeUpgrade linux-image-bluefieldUpgrade linux-image-oem-20.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.4.0-1047-xilinx-zynqmpUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1048-gkeopUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-5.15.0-1062-gkeUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-oem-24.04Upgrade linux-image-azure-lts-20.04Upgrade linux-image-5.15.0-1058-ibmUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-6.8.0-1006-oracle-64kUpgrade linux-image-virtualUpgrade linux-image-oem-20.04dUpgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-6.8.0-1006-oemUpgrade linux-image-5.15.0-1058-raspiUpgrade linux-image-5.15.0-116-genericUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-5.15.0-116-generic-64kUpgrade linux-image-6.8.0-1004-gkeUpgrade linux-image-5.15.0-1060-nvidia-lowlatencyUpgrade linux-image-6.8.0-1008-azure-fde | Jul 1, 2024 | Apr 5, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Apr 5, 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