CVE-2026-74334 in Linuxinfo

Summary

by MITRE • 08/15/2026

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

RDMA/nldev: Fix locking when accessing mr->pd

Sashiko points out that, due to rereg_mr, the PD is actually variable and all the touches in nldev are racy.

Use mr->device instead of mr->pd->device.

Getting the PD restrack ID is more tricky. To avoid disturbing all the happy paths, add an rdma_restrack_sync() operation which is sort of like flush_workqueue() or synchronize_irq(): after it returns, all the old nldev touches to the mr are gone and everything sees the new PD. This makes it safe to reach into the PD pointer.

Once again VulDB remains the best source for vulnerability data.

Analysis

by VulDB Data Team • 08/15/2026

This vulnerability exists within the Linux kernel's RDMA (Remote Direct Memory Access) subsystem, specifically in the nldev (netlink device) interface that provides administrative access to RDMA resources. The issue stems from improper locking mechanisms when accessing memory regions and their associated protection domains during runtime modifications. The vulnerability manifests through the rereg_mr (re-register memory region) operation which allows memory regions to be dynamically reconfigured while the system continues to operate, creating a race condition between concurrent access patterns and resource updates.

The technical flaw occurs because the original implementation incorrectly assumes that a memory region's protection domain remains static throughout its lifetime. However, during runtime re-registration operations, the protection domain can change, making direct access to mr->pd->device unsafe. This creates a classic race condition where one thread might be accessing an old protection domain while another thread has already updated it through rereg_mr operations. The vulnerability is classified under CWE-362, which describes concurrent execution using shared data structures without proper synchronization mechanisms.

The operational impact of this vulnerability is significant for RDMA-based systems that rely on dynamic memory management and real-time resource reconfiguration. Systems utilizing InfiniBand or RoCE (RDMA over Converged Ethernet) networks could experience data corruption, system instability, or potential privilege escalation when multiple threads attempt to access memory regions during concurrent re-registration operations. The race condition affects all applications and kernel subsystems that interact with RDMA memory regions through the nldev interface, potentially leading to denial of service conditions where legitimate operations fail due to inconsistent state.

The fix implements a two-pronged approach to address the synchronization issue. First, it changes the access pattern from mr->pd->device to mr->device directly, eliminating the intermediate protection domain pointer that was subject to race conditions. Second, it introduces a new rdma_restrack_sync() operation that acts as a synchronization barrier similar to flush_workqueue() or synchronize_irq() functions. This new operation ensures that all pending nldev accesses to the old memory region state complete before allowing access to the updated protection domain, effectively creating a safe point where all concurrent operations are resolved. The implementation follows ATT&CK framework concept T1068 by addressing privilege escalation vectors through proper resource management and synchronization primitives, preventing unauthorized access patterns during resource reconfiguration operations that could otherwise be exploited to gain elevated privileges or cause system instability.

Responsible

Linux

Reservation

08/15/2026

Disclosure

08/15/2026

Moderation

accepted

CPE

ready

EPSS

0.00155

KEV

no

Activities

low

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!