linux: In the Linux kernel, the following vulnerability has been resolved: vfio/cdx: Serialize VFIO_DEVICE_SET_IRQS with a...
CVE-2026-46036 is fixed in 14 products on 1 platform, first by DEBIAN-CVE-2026-46036, released May 27, 2026. It is not reported as exploited. Patch Radar priority: High.
In the Linux kernel, the following vulnerability has been resolved: vfio/cdx: Serialize VFIO_DEVICE_SET_IRQS with a per-device mutex vfio_cdx_set_msi_trigger() reads vdev->config_msi and operates on the vdev->cdx_irqs array based on its value, but provides no serialization against concurrent VFIO_DEVICE_SET_IRQS ioctls. Two callers can race such that one observes config_msi as set while another clears it and frees cdx_irqs via vfio_cdx_msi_disable(), resulting in a use-after-free of the cdx_irqs array. Add a cdx_irqs_lock mutex to struct vfio_cdx_device and acquire it in vfio_cdx_set_msi_trigger(), which is the single chokepoint through which all updates to config_msi, cdx_irqs, and msi_count flow, covering both the ioctl path and the close-device cleanup path. This keeps the test of config_msi atomic with the subsequent enable, disable, or trigger operations. Drop the pre-call !cdx_irqs test from vfio_cdx_irqs_cleanup() as part of this change: the optimization it provided is redundant with the !config_msi early-return inside vfio_cdx_msi_disable(), and leaving the test in place would be an unsynchronized read of state the new lock is meant to protect.
Where it's fixed
| Product | Fixed in | Fix | Released |
|---|---|---|---|
| Linux | |||
| dtb-aarch64 · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-64kb · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-64kb · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-azure · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-azure · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-default · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-default · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23237-1 | Aug 11, 2026 |
| kernel-default-base · opensuse-leap 16.0 | 6.12.0-160000.37.1.160000.2.19 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-default-base · sles 16.0 | 6.12.0-160000.37.1.160000.2.19 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-docs · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-docs · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-kvmsmall · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-kvmsmall · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-obs-build · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-obs-qa · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-obs-qa · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-rt · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-source · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-source · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-syms · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-syms · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-zfcpdump · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-zfcpdump · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| linux · Debian 13.5 (trixie) | 6.12.86-1 | DEBIAN-CVE-2026-46036 | May 27, 2026 |
| linux · Debian 14 | 7.0.4-1 | DEBIAN-CVE-2026-46036 | May 27, 2026 |
Patch Radar data is free to use with attribution. Terms and how to credit it.
Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.