CVE-2026-80631
Description
In the Linux kernel, the following vulnerability has been resolved: btrfs: lzo: reject compressed segment that overflows the compressed input lzo_decompress_bio() validates each on-disk segment length seg_len only against the workspace cbuf size, not against the compressed input size (compressed_len, the total folio bytes of the bio). A crafted extent can carry a segment whose seg_len passes the cbuf check but runs past the end of the bio, so copy_compressed_segment() walks off the last folio: get_current_folio() then returns the NULL folio from bio_next_folio(), and with CONFIG_BTRFS_ASSERT disabled (default) folio_size(NULL) faults. BUG: KASAN: null-ptr-deref in lzo_decompress_bio (fs/btrfs/lzo.c:383) Read of size 8 at addr 0000000000000000 by task kworker/u8:1/29 Workqueue: btrfs-endio simple_end_io_work kasan_report (mm/kasan/report.c:590) lzo_decompress_bio (fs/btrfs/lzo.c:383) end_bbio_compressed_read (fs/btrfs/compression.c:1065) btrfs_bio_end_io (fs/btrfs/bio.c:135) btrfs_check_read_bio (fs/btrfs/bio.c:180 fs/btrfs/bio.c:285) simple_end_io_work process_one_work worker_thread Reject any segment whose payload would extend beyond compressed_len before copying it, treating it as corruption like the other on-disk validation failures in this function.
How to fix
- Linux Linuxe4325fb00e0c7269cb67f97d7148507787a57fd7, d9b17f9ce67d00e48fab62dcae197612a58f625f, 1c48c8c807e49ac4f72819a89035fb8d2d094015, be7fb59512ffc2da5d98214a00117dfe9eccab78, 1641d058adfbd50cf95d54581ed5d142ee82c07f, b0d27d43791b7a3057c3c4aedf9b4aa033d37c46 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < e4325fb00e0c7269cb67f97d7148507787a57fd7, a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < d9b17f9ce67d00e48fab62dcae197612a58f625f, a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < 1c48c8c807e49ac4f72819a89035fb8d2d094015, a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < be7fb59512ffc2da5d98214a00117dfe9eccab78, a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < 1641d058adfbd50cf95d54581ed5d142ee82c07f, a6e66e6f8c1b685e11b778bef614480a9c1a5278 ≤ v < b0d27d43791b7a3057c3c4aedf9b4aa033d37c46, 5.15 | e4325fb00e0c7269cb67f97d7148507787a57fd7, d9b17f9ce67d00e48fab62dcae197612a58f625f, 1c48c8c807e49ac4f72819a89035fb8d2d094015, be7fb59512ffc2da5d98214a00117dfe9eccab78, 1641d058adfbd50cf95d54581ed5d142ee82c07f, b0d27d43791b7a3057c3c4aedf9b4aa033d37c46 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.