CVE-2026-23044: PM: hibernate: Fix crash when freeing invalid crypto compressor
In the Linux kernel, the following vulnerability has been resolved:
PM: hibernate: Fix crash when freeing invalid crypto compressor
When cryptoallocacomp() fails, it returns an ERRPTR value, not NULL.
The cleanup code in savecompressedimage() and loadcompressedimage() unconditionally calls cryptofreeacomp() without checking for ERRPTR, which causes cryptoacomptfm() to dereference an invalid pointer and crash the kernel.
This can be triggered when the compression algorithm is unavailable (e.g., CONFIGCRYPTOLZO not enabled).
Fix by adding ISERRORNULL() checks before calling cryptofreeacomp() and acomprequestfree(), similar to the existing kthreadstop() check.
[ rjw: Added 2 empty code lines ]
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
Add IS_ERR_OR_NULL() checks before calling crypto_free_acomp() in save_compressed_image() and load_compressed_image(), and apply the analogous check in acomp_request_free().