CVE Catalog

CVE-2026-93264

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, the RDMA/efa driver, when registering an MR and creating an indirect PBL, wrongly computed the last chunk length as 0 if the PBL page count was a multiple of EFA_PTRS_PER_CHUNK. This caused the device to see the chunk as empty and reject the memory registration.

Risk Assessment

The incorrect PBL chunk length computation leads to memory registration rejection by the EFA device, preventing RDMA applications from working correctly and potentially causing errors and service unavailability.

Recommendation

Update the Linux kernel to a version with the fix that performs the calculation only when the page count is not a multiple of EFA_PTRS_PER_CHUNK and prevents out-of-bounds access in the chunks array.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: RDMA/efa: Fix PBL chunk length computation On register MR, when creating the PBL, if it's an indirect PBL we create a chunk list to hold the PBL pages pointers. Each chunk is 4KB in size and can hold 510 addresses (EFA_PTRS_PER_CHUNK) and has a 12-byte control buffer at the end of it holding the next chunk's pointer and its length. If the PBL number of pages is a multiple of EFA_PTRS_PER_CHUNK, the calculated last chunk length is wrongly computed as 0, even though that chunk is fully populated with 510 real page pointers. This wrong length is used both to DMA map the chunk and is propagated to the device, causing the device to see the chunk as empty and reject the memory registration. Fix the calculation so it will be performed only if the number of pages isn't a multiple of EFA_PTRS_PER_CHUNK, if it is, its already handled in the above loop correctly. Also prevent out-of-bounds reach in the chunks array in such scenario.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS