In the Linux kernel, the following vulnerability has been resolved:
Input: uinput - fix circular locking dependency with ff-core
A lockdep circular locking dependency warning can be triggered reproducibly when using a force-feedback gamepad with uinput (for example, playing ELDEN RING under Wine with a Flydigi Vader 5 controller):
ff->mutex -> udev->mutex -> input_mutex -> dev->mutex -> ff->mutex
The cycle is caused by four lock acquisition paths:
1. ff upload: input_ff_upload() holds ff->mutex and calls uinput_dev_upload_effect() -> uinput_request_submit() -> uinput_request_send(), which acquires udev->mutex.
2. device create: uinput_ioctl_handler() holds udev->mutex and calls uinput_create_device() -> input_register_device(), which acquires input_mutex.
3. device register: input_register_device() holds input_mutex and calls kbd_connect() -> input_register_handle(), which acquires dev->mutex.
4. evdev release: evdev_release() calls input_flush_device() under dev->mutex, which calls input_ff_flush() acquiring ff->mutex.
Fix this by introducing a new state_lock spinlock to protect udev->state and udev->dev access in uinput_request_send() instead of acquiring udev->mutex. The function only needs to atomically check device state and queue an input event into the ring buffer via uinput_dev_event() -- both operations are safe under a spinlock (ktime_get_ts64() and wake_up_interruptible() do not sleep). This breaks the ff->mutex -> udev->mutex link since a spinlock is a leaf in the lock ordering and cannot form cycles with mutexes.
To keep state transitions visible to uinput_request_send(), protect writes to udev->state in uinput_create_device() and uinput_destroy_device() with the same state_lock spinlock.
Additionally, move init_completion(&request->done) from uinput_request_send() to uinput_request_submit() before uinput_request_reserve_slot(). Once the slot is allocated, uinput_flush_requests() may call complete() on it at any time from the destroy path, so the completion must be initialised before the request becomes visible.
Lock ordering after the fix:
ff->mutex -> state_lock (spinlock, leaf) udev->mutex -> state_lock (spinlock, leaf) udev->mutex -> input_mutex -> dev->mutex -> ff->mutex (no back-edge)
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-tools-develUpgrade kernel-debuginfo-common-x86_64Upgrade perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-headersUpgrade kernelUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-toolsUpgrade perfUpgrade kernel-livepatch-5.15.204-143.230Upgrade bpftoolUpgrade kernel-livepatch-5.10.253-252.1015Upgrade python-perf | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade kernel-debuginfo-common-aarch64Upgrade python3-perf-debuginfoUpgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-livepatch-6.1.170-210.320Upgrade kernel-modules-extraUpgrade kernel-develUpgrade kernel-tools-debuginfoUpgrade kernel-tools-develUpgrade python3-perfUpgrade kernel-toolsUpgrade perfUpgrade kernelUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-modules-extra-commonUpgrade kernel-headersUpgrade perf-debuginfo | May 19, 2026 | Apr 24, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux | May 3, 2026 | May 3, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Apr 24, 2026 |
| Ubuntu | — | Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-lowlatency-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-laptop-23.10Upgrade linux-image-nvidiaUpgrade linux-image-6.8.0-1061-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-azure-fde-6.8Upgrade linux-image-6.8.1-1056-realtimeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-6.8.0-1061-aws-fipsUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-oem-22.04cUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-realtimeUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-azure-fips-6.8Upgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-generic-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-oem-20.04dUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-realtime-5.15Upgrade linux-image-oem-20.04Upgrade linux-image-kvm-5.15Upgrade linux-image-gkeUpgrade linux-image-gke-64k-6.8Upgrade linux-image-intelUpgrade linux-image-6.8.0-136-fipsUpgrade linux-image-6.8.0-2050-raspi-realtimeUpgrade linux-image-6.8.0-1030-nvidia-tegraUpgrade linux-image-azure-5.15Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-6.8.0-1064-gcp-fipsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-gcpUpgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-6.8.0-1058-oracleUpgrade linux-image-generic-64kUpgrade linux-image-6.8.0-1059-nvidiaUpgrade linux-image-aws-5.15Upgrade linux-image-6.8.0-1063-azure-fipsUpgrade linux-image-azure-fips-5.15Upgrade linux-image-6.8.0-136-genericUpgrade linux-image-gkeop-6.8Upgrade linux-image-xilinxUpgrade linux-image-fips-5.15Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-gkeopUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-lowlatency-5.15Upgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-aws-lts-24.04Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-fips-6.8Upgrade linux-image-oem-22.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-6.8.0-1033-xilinxUpgrade linux-image-6.8.0-1059-gkeUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-6.8.0-1064-gcpUpgrade linux-image-raspi-realtimeUpgrade linux-image-virtualUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-6.8.0-136-lowlatency-64kUpgrade linux-image-6.8.0-1061-ibmUpgrade linux-image-oracle-6.8Upgrade linux-image-raspi-5.15Upgrade linux-image-aws-64kUpgrade linux-image-genericUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-azure-6.8Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.8.0-1059-nvidia-lowlatencyUpgrade linux-image-6.8.0-1063-azureUpgrade linux-image-gke-6.8Upgrade linux-image-gke-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-generic-64k-5.15Upgrade linux-image-gcp-6.8Upgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-realtime-6.8.1Upgrade linux-image-intel-iotgUpgrade linux-image-xilinx-6.8Upgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-1059-gke-64kUpgrade linux-image-aws-64k-5.15Upgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibmUpgrade linux-image-gke-5.15Upgrade linux-image-generic-lpaeUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-1061-aws-64kUpgrade linux-image-6.8.0-1061-awsUpgrade linux-image-nvidia-tegraUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-raspi-6.8Upgrade linux-image-oracle-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-ibm-5.15Upgrade linux-image-aws-64k-6.8Upgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-5.15.0-186-genericUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-raspi-nolpaeUpgrade linux-image-aws-fips-5.15Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-oracleUpgrade linux-image-gcp-64kUpgrade linux-image-aws-6.8Upgrade linux-image-fipsUpgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-6.8.0-1030-nvidia-tegra-rtUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-gcp-5.15Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-oem-20.04bUpgrade linux-image-aws-fipsUpgrade linux-image-5.15.0-1112-awsUpgrade linux-image-5.15.0-186-fipsUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-gcp-fipsUpgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1059-nvidia-64kUpgrade linux-image-aws-fips-6.8Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-azureUpgrade linux-image-oem-22.04dUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-generic-64k-6.8Upgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-raspiUpgrade linux-image-6.8.0-1046-gkeopUpgrade linux-image-ibm-6.8Upgrade linux-image-6.8.0-1058-oracle-64kUpgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-6.8.0-1059-nvidia-lowlatency-64kUpgrade linux-image-virtual-5.15Upgrade linux-image-generic-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-136-lowlatencyUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-6.8.0-1064-gcp-64kUpgrade linux-image-kvmUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-awsUpgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-virtual-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-azure-fde-5.15Upgrade linux-image-azure-fdeUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-oem-20.04cUpgrade linux-image-oem-22.04b | May 25, 2026 | Apr 24, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Apr 24, 2026 |
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