CVE-2022-49167

CVE-2022-49167

High · published February 26, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
18.6
In the wild
Unconfirmed
What it is

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

btrfs: do not double complete bio on errors during compressed reads

I hit some weird panics while fixing up the error handling from

btrfs_lookup_bio_sums(). Turns out the compression path will complete

the bio we use if we set up any of the compression bios and then return

an error, and then btrfs_submit_data_bio() will also call bio_endio() on

the bio.

Fix this by making btrfs_submit_compressed_read() responsible for

calling bio_endio() on the bio if there are any errors. Currently it

was only doing it if we created the compression bios, otherwise it was

depending on btrfs_submit_data_bio() to do the right thing. This

creates the above problem, so fix up btrfs_submit_compressed_read() to

always call bio_endio() in case of an error, and then simply return from

btrfs_submit_data_bio() if we had to call

btrfs_submit_compressed_read().

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00272 · 18.6th percentile
Published
2025-02-26T12:00Z
Affected products (2)
ProductVersionsFixed in
linux/linux_kernel≥ 5.16, < 5.16.195.16.19
linux/linux_kernel≥ 5.17, < 5.17.25.17.2
References (3)
EPSS history
Timeline
  • 26 FEB 01:55Z
    btrfs: do not double complete bio on errors during compressed reads
    cvelistv5