CVE-2025-21684: Linux kernel · gpio: xilinx: Convert gpio_lock to raw spinlock
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 5.5 Medium · fixed in 5.15.0-1084.91~20.04.1 : update Linux kernel when convenient.
Data as of 29 Oct 2026, 22:35 UTC
- Patch
- Available – fixed in 5.15.0-1084.91~20.04.1, 5.15.0-1089.98~20.04.1, 5.15.0-1083.92~20.04.1 +63
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 9 Feb 2025
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Patches and advisories
- ubuntu.com/security/notices/USN-7445-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7448-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7512-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-4 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-5 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-6 (opens in a new tab)
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 24.04 LTSlinuxpkg:deb/ubuntu/linux?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-awspkg:deb/ubuntu/linux-aws?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azurepkg:deb/ubuntu/linux-azure?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-6.11pkg:deb/ubuntu/linux-azure-6.11?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-nvidiapkg:deb/ubuntu/linux-azure-nvidia?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-gcppkg:deb/ubuntu/linux-gcp?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
In the Linux kernel, the following vulnerability has been resolved: gpio: xilinx: Convert gpio_lock to raw spinlock irq_chip functions may be called in raw spinlock context. Therefore, we must also use a raw spinlock for our own internal locking. This fixes the following lockdep splat: [ 5.349336] ============================= [ 5.353349] [ BUG: Invalid wait context ] [ 5.357361] 6.13.0-rc5+ #69 Tainted: G W [ 5.363031] ----------------------------- [ 5.367045] kworker/u17:1/44 is trying to lock: [ 5.371587] ffffff88018b02c0 (&chip->gpio_lock){....}-{3:3}, at: xgpio_irq_unmask (drivers/gpio/gpio-xilinx.c:433 (discriminator 8)) [ 5.380079] other info that might help us debug this: [ 5.385138] context-{5:5} [ 5.387762] 5 locks held by kworker/u17:1/44: [ 5.392123] #0: ffffff8800014958 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work (kernel/workqueue.c:3204) [ 5.402260] #1: ffffffc082fcbdd8 (deferred_probe_work){+.+.}-{0:0}, at: process_one_work (kernel/workqueue.c:3205) [ 5.411528] #2: ffffff880172c900 (&dev->mutex){....}-{4:4}, at: __device_attach (drivers/base/dd.c:1006) [ 5.419929] #3: ffffff88039c8268 (request_class#2){+.+.}-{4:4}, at: __setup_irq (kernel/irq/internals.h:156 kernel/irq/manage.c:1596) [ 5.428331] #4: ffffff88039c80c8 (lock_class#2){....}-{2:2}, at: __setup_irq (kernel/irq/manage.c:1614) [ 5.436472] stack backtrace: [ 5.439359] CPU: 2 UID: 0 PID: 44 Comm: kworker/u17:1 Tainted: G W 6.13.0-rc5+ #69 [ 5.448690] Tainted: [W]=WARN [ 5.451656] Hardware name: xlnx,zynqmp (DT) [ 5.455845] Workqueue: events_unbound deferred_probe_work_func [ 5.461699] Call trace: [ 5.464147] show_stack+0x18/0x24 C [ 5.467821] dump_stack_lvl (lib/dump_stack.c:123) [ 5.471501] dump_stack (lib/dump_stack.c:130) [ 5.474824] __lock_acquire (kernel/locking/lockdep.c:4828 kernel/locking/lockdep.c:4898 kernel/locking/lockdep.c:5176) [ 5.478758] lock_acquire (arch/arm64/include/asm/percpu.h:40 kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5851 kernel/locking/lockdep.c:5814) [ 5.482429] _raw_spin_lock_irqsave (include/linux/spinlock_api_smp.h:111 kernel/locking/spinlock.c:162) [ 5.486797] xgpio_irq_unmask (drivers/gpio/gpio-xilinx.c:433 (discriminator 8)) [ 5.490737] irq_enable (kernel/irq/internals.h:236 kernel/irq/chip.c:170 kernel/irq/chip.c:439 kernel/irq/chip.c:432 kernel/irq/chip.c:345) [ 5.494060] __irq_startup (kernel/irq/internals.h:241 kernel/irq/chip.c:180 kernel/irq/chip.c:250) [ 5.497645] irq_startup (kernel/irq/chip.c:270) [ 5.501143] __setup_irq (kernel/irq/manage.c:1807) [ 5.504728] request_threaded_irq (kernel/irq/manage.c:2208)
References
- ubuntu.com/security/CVE-2025-21684 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2025-21684 (opens in a new tab)
- git.kernel.org/linus/9860370c2172704b6b4f0075a0c2a29fd84af96a (opens in a new tab)
- git.kernel.org/stable/c/9860370c2172704b6b4f0075a0c2a29fd84af96a (opens in a new tab)
- git.kernel.org/stable/c/9c035105c5537d2ecad6b9415e9417a1ffbd0a62 (opens in a new tab)
- git.kernel.org/stable/c/b0111650ee596219bb5defa0ce1a1308e6e77ccf (opens in a new tab)
- ubuntu.com/security/notices/USN-7445-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7448-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7512-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-4 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-5 (opens in a new tab)
- ubuntu.com/security/notices/USN-7511-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-6 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-7 (opens in a new tab)
- ubuntu.com/security/notices/USN-7510-8 (opens in a new tab)