CVE-2026-89742

Summary

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

rapidio: mport_cdev: fix use-after-free in dma_req_free()

dma_req_free() acquires buf_mutex through req->map, drops the mapping reference with kref_put(), and then dereferences req->map again to unlock the mutex.

If kref_put() drops the last reference, mport_release_mapping() frees the mapping, and the subsequent mutex_unlock() dereferences a freed object. This is a use-after-free.

Fix this by caching map and md before kref_put(), clearing req->map while holding buf_mutex, and using the cached md for mutex unlocking.

The bug is reachable from userspace via the RapidIO mport character device interface.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < 00c5ed913b0dc563fbeb8a97ea8916c03bbbbf6aaffected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < fc79c07cdcde02c5b17633d78777de6ac2c14b29affected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < 26ccfe7d69e27b0d933ae0a64a23a0cb9b9a85a6affected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < bd8881c24a9520f9c3d3e855d866197f63e471a7affected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < 9a9929ec875ff20922c90c96fd544ae8a2a61a8daffected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < e6e925cc1f8067c65c7bec3da50a0ead3b3ef4e0affected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < 211c68d817a3d9dc14c0026a59da7cac30f8147eaffected
LinuxLinuxe8de370188d098bb49483c287b44925957c3c9b6 < 5cbef379a94b161726c5f504598bf4791d45cedcaffected
LinuxLinux4.6affected
LinuxLinux0 < 4.6unaffected
LinuxLinux5.10.270 <= 5.10.*unaffected
LinuxLinux5.15.221 <= 5.15.*unaffected
LinuxLinux6.1.188 <= 6.1.*unaffected
LinuxLinux6.6.157 <= 6.6.*unaffected
LinuxLinux6.12.109 <= 6.12.*unaffected
LinuxLinux6.18.50 <= 6.18.*unaffected
LinuxLinux7.2.4 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References