CVE-2025-38544

rxrpc: Fix bug due to prealloc collision

published August 16, 2025

CVSS
—
EPSS
0%
Percentile
4.2
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

rxrpc: Fix bug due to prealloc collision

When userspace is using AF_RXRPC to provide a server, it has to preallocate

incoming calls and assign to them call IDs that will be used to thread

related recvmsg() and sendmsg() together. The preallocated call IDs will

automatically be attached to calls as they come in until the pool is empty.

To the kernel, the call IDs are just arbitrary numbers, but userspace can

use the call ID to hold a pointer to prepared structs. In any case, the

user isn't permitted to create two calls with the same call ID (call IDs

become available again when the call ends) and EBADSLT should result from

sendmsg() if an attempt is made to preallocate a call with an in-use call

ID.

However, the cleanup in the error handling will trigger both assertions in

rxrpc_cleanup_call() because the call isn't marked complete and isn't

marked as having been released.

Fix this by setting the call state in rxrpc_service_prealloc_one() and then

marking it as being released before calling the cleanup function.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00154 · 4.2th percentile
Published
2025-08-16T11:22Z
EPSS history
Timeline
  • 16 AUG 11:22Z
    rxrpc: Fix bug due to prealloc collision
    cvelistv5