Description (CNA)
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 (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 96d3c1cadedb6ae2e8965e19cd12caa244afbd9c before 48b1d42286bfef7628b1d6c8c28d4e456c90f725; affected 96d3c1cadedb6ae2e8965e19cd12caa244afbd9c before 551f1dfbcb7f3e6ed07f9d6c8c1c64337fcd0ede; affected 96d3c1cadedb6ae2e8965e19cd12caa244afbd9c before 1ab9733d14cc9987cc5dcd1f0ad1f416e302e2e6; affected 96d3c1cadedb6ae2e8965e19cd12caa244afbd9c before 11f08c30a3e4157305ba692f1d44cca5fc9a8fca; affected d410a96e5cb8c1ec7049c83f2edcd8bbfaf5d9b3; affected 6.4.12 before 6.5 |
| Linux / Linux | affected 6.5; unaffected 0 before 6.5; unaffected 6.6.114 through 6.6.*; unaffected 6.12.55 through 6.12.*; unaffected 6.17.5 through 6.17.*; unaffected 6.18 through * |
CWE
No CWE identifiers supplied.