CVE-2026-53163

locking/rtmutex: Skip remove_waiter() when waiter is not enqueued

MEDIUM
5.5
CVSS Score
Published: June 25, 2026 at 08:38 AM UTC
Updated: July 24, 2026 at 03:33 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.1%

Description

In the Linux kernel, the following vulnerability has been resolved: locking/rtmutex: Skip remove_waiter() when waiter is not enqueued syzbot triggered the following splat in remove_waiter() via FUTEX_CMP_REQUEUE_PI: KASAN: null-ptr-deref in range [0x0000000000000a88-0x0000000000000a8f] class_raw_spinlock_constructor remove_waiter+0x159/0x1200 kernel/locking/rtmutex.c:1561 rt_mutex_start_proxy_lock+0x103/0x120 futex_requeue+0x10e4/0x20d0 __x64_sys_futex+0x34f/0x4d0 task_blocks_on_rt_mutex() does not arm the waiter upon deadlock detection, leaving waiter->task nil, where 3bfdc63936dd ("rtmutex: Use waiter::task instead of current in remove_waiter()") made this fatal. Furthermore, rt_mutex_start_proxy_lock() should not be calling into remove_waiter() upon a successfully grabbing the rtmutex. 1a1fb985f2e2 ("futex: Handle early deadlock return correctly"), moved the remove_waiter() out of __rt_mutex_start_proxy_lock() (where 'ret' was only ever 0 or < 0) into the wrapper. Tighten this check to account for try_to_take_rt_mutex().

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

6.1.175 ≤ v < 6.1.1776.12.86 ≤ v < 6.12.956.18.27 ≤ v < 6.18.366.6.140 ≤ v < 6.6.1447.0.4 ≤ v < 7.0.133bfdc63936dd4773109b7b8c280c0f3b5ae7d3493fb7394a837740770f0d6b4b30567e60786a63f26.1.1756.12.866.18.276.6.1406d52dfcb2a5db86e346cf51f8fcf2071b80851667.0.47.1 rc17.1 rc27.1 rc37.1 rc47.1 rc57.1 rc6838ce5cb5d93c3ab8b27e75bc6ad905a94b752fd88614876370aac8ad1050ad785a4c095ba17ac118a1fc8d698ac5e5916e3082a0f74450d71f9611fd8cce4773c2b23d819baf5abedc62f7b430e8745f3fa3424bceb128d2be4b3745506b22844b87db7
Vendor states this is fixed in 40a25d59e85b3c8709ac2424d44f65610467871e (fixed)
Vendor states this is fixed in 4afda3a1da02129568a3a2f1898aa13e6763bcba (fixed)
Vendor states this is fixed in 4ffacf76a457b7ca8ac05f5df8740b0d8f53574a (fixed)
Vendor states this is fixed in 55363fa0a04524d11efeaadee734d2db1756ed27 (fixed)
Vendor states this is fixed in 5799f9bd7fee40370b93ab1ddf001cdc7017c14d (fixed)
Vendor states this is fixed in 6707d7e0b71748cb3cd95bad81dae5fe1b3c8f48 (fixed)
Vendor states this is fixed in a388e3dfaf9538a680de5ed43a8ebb5dd45b6e53 (fixed)
Vendor states this is fixed in bfbc047ceb42c0e1fac8f3a155d4548a8bbe76b1 (fixed)
Affected range stops below 6.1.177, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.12.95, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.18.36, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.6.144, so it looks safe — our inference, not a vendor statement
Affected range stops below 7.0.13, so it looks safe — our inference, not a vendor statement

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-476

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card