CVE-2025-40172

Summary

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

accel/qaic: Treat remaining == 0 as error in find_and_map_user_pages()

Currently, if find_and_map_user_pages() takes a DMA xfer request from the user with a length field set to 0, or in a rare case, the host receives QAIC_TRANS_DMA_XFER_CONT from the device where resources->xferred_dma_size is equal to the requested transaction size, the function will return 0 before allocating an sgt or setting the fields of the dma_xfer struct. In that case, encode_addr_size_pairs() will try to access the sgt which will lead to a general protection fault.

Return an EINVAL in case the user provides a zero-sized ALP, or the device requests continuation after all of the bytes have been transferred.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux96d3c1cadedb6ae2e8965e19cd12caa244afbd9c < 48b1d42286bfef7628b1d6c8c28d4e456c90f725affected
LinuxLinux96d3c1cadedb6ae2e8965e19cd12caa244afbd9c < 551f1dfbcb7f3e6ed07f9d6c8c1c64337fcd0edeaffected
LinuxLinux96d3c1cadedb6ae2e8965e19cd12caa244afbd9c < 1ab9733d14cc9987cc5dcd1f0ad1f416e302e2e6affected
LinuxLinux96d3c1cadedb6ae2e8965e19cd12caa244afbd9c < 11f08c30a3e4157305ba692f1d44cca5fc9a8fcaaffected
LinuxLinuxd410a96e5cb8c1ec7049c83f2edcd8bbfaf5d9b3affected
LinuxLinux6.4.12 < 6.5affected
LinuxLinux6.5affected
LinuxLinux0 < 6.5unaffected
LinuxLinux6.6.114 <= 6.6.*unaffected
LinuxLinux6.12.55 <= 6.12.*unaffected
LinuxLinux6.17.5 <= 6.17.*unaffected
LinuxLinux6.18 <= *unaffected

Weaknesses

References