Description
In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Fix improper freeing of purex item In qla2xxx_process_purls_iocb(), an item is allocated via qla27xx_copy_multiple_pkt(), which internally calls qla24xx_alloc_purex_item(). The qla24xx_alloc_purex_item() function may return a pre-allocated item from a per-adapter pool for small allocations, instead of dynamically allocating memory with kzalloc(). An error handling path in qla2xxx_process_purls_iocb() incorrectly uses kfree() to release the item. If the item was from the pre-allocated pool, calling kfree() on it is a bug that can lead to memory corruption. Fix this by using the correct deallocation function, qla24xx_free_purex_item(), which properly handles both dynamically allocated and pre-allocated items.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
875386b98857822b77ac7f95bdf367b70af5b78c to < 4bccd506a1f1ab01d1f45b2a3effff6bedc73cf9affected875386b98857822b77ac7f95bdf367b70af5b78c to < 8e9f0a0717ba31d5842721627ade1e62d7aec012affected875386b98857822b77ac7f95bdf367b70af5b78c to < cfe3e2f768d248fd3d965d561d0768a56dd0b9f8affected875386b98857822b77ac7f95bdf367b70af5b78c to < 5fa1c8226b4532ad7011d295d3ab4ad45df105aeaffected875386b98857822b77ac7f95bdf367b70af5b78c to < 78b1a242fe612a755f2158fd206ee6bb577d18caaffected
Linux Linux
Default version status: affected
6.6affected0 to < 6.6unaffected6.6.120 to ≤ 6.6.*unaffected6.12.63 to ≤ 6.12.*unaffected6.17.13 to ≤ 6.17.*unaffected6.18.2 to ≤ 6.18.*unaffected6.19 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/4bccd506a1f1ab01d1f45b2a3effff6bedc73cf9 ↗
- https://git.kernel.org/stable/c/8e9f0a0717ba31d5842721627ade1e62d7aec012 ↗
- https://git.kernel.org/stable/c/cfe3e2f768d248fd3d965d561d0768a56dd0b9f8 ↗
- https://git.kernel.org/stable/c/5fa1c8226b4532ad7011d295d3ab4ad45df105ae ↗
- https://git.kernel.org/stable/c/78b1a242fe612a755f2158fd206ee6bb577d18ca ↗