CVE-2026-45942 json
ext4: fix e4b bitmap inconsistency reports
published 2026-05-27 5 mo ago modified 2026-10-30 10 d ago also EUVD-2026-32226
- cvss
- 7.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.1%
- EPSS 0.1% chance of exploitation in 30 days, percentile 2%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
ext4: fix e4b bitmap inconsistency reports
A bitmap inconsistency issue was observed during stress tests under mixed huge-page workloads. Ext4 reported multiple e4b bitmap check failures like:
ext4_mb_complex_scan_group:2508: group 350, 8179 free clusters as per group info. But got 8192 blocks
Analysis and experimentation confirmed that the issue is caused by a race condition between page migration and bitmap modification. Although this timing window is extremely narrow, it is still hit in practice:
folio_lock ext4_mb_load_buddy __migrate_folio check ref count folio_mc_copy __filemap_get_folio folio_try_get(folio) ...... mb_mark_used ext4_mb_unload_buddy __folio_migrate_mapping folio_ref_freeze folio_unlock
The root cause of this issue is that the fast path of load_buddy only increments the folio's reference count, which is insufficient to prevent concurrent folio migration. We observed that the folio migration process acquires the folio lock. Therefore, we can determine whether to take the fast path in load_buddy by checking the lock status. If the folio is locked, we opt for the slow path (which acquires the lock) to close this concurrency window.
Additionally, this change addresses the following issues:
When the DOUBLE_CHECK macro is enabled to inspect bitmap-related issues, the following error may be triggered:
corruption in group 324 at byte 784(6272): f in copy != ff on disk/prealloc
Analysis reveals that this is a false positive. There is a specific race window where the bitmap and the group descriptor become momentarily inconsistent, leading to this error report:
ext4_mb_load_buddy ext4_mb_load_buddy __filemap_get_folio(create|lock) folio_lock ext4_mb_init_cache folio_mark_uptodate __filemap_get_folio(no lock) ...... mb_mark_used mb_mark_used_double mb_cmp_bitmaps mb_set_bits(e4b->bd_bitmap) folio_unlock
The original logic assumed that since mb_cmp_bitmaps is called when the bitmap is newly loaded from disk, the folio lock would be sufficient to prevent concurrent access. However, this overlooks a specific race condition: if another process attempts to load buddy and finds the folio is already in an uptodate state, it will immediately begin using it without holding folio lock.
Patch / fix
- Linux Linux 6.1.191, 6.6.130, 6.12.75, 6.18.14, 6.19.4, 7.0
- linux Debian 13 6.12.85-1
- linux Debian 14 6.18.14-1
debian advisories DEBIAN-CVE-2026-45942
- linux Ubuntu 24.04 LTS 6.8.0-136.136
- linux-aws Ubuntu 24.04 LTS 6.8.0-1061.64
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1064.72
- linux-gke Ubuntu 24.04 LTS 6.8.0-1059.67
- linux-ibm Ubuntu 24.04 LTS 6.8.0-1061.62
- linux-azure Ubuntu 24.04 LTS 6.8.0-1063.71
- linux-gkeop Ubuntu 24.04 LTS 6.8.0-1046.50
- linux-raspi Ubuntu 24.04 LTS 6.8.0-1061.65
ubuntu advisories UBUNTU-CVE-2026-45942
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel RHEL 10.2 6.12.0-211.61.1.el10_2
- rv RHEL 10.2 6.12.0-211.61.1.el10_2
- perf RHEL 10.2 6.12.0-211.61.1.el10_2
- rtla RHEL 10.2 6.12.0-211.61.1.el10_2
- libperf RHEL 10.2 6.12.0-211.61.1.el10_2
- kernel-rt RHEL 10.2 6.12.0-211.61.1.el10_2
- kernel-64k RHEL 10.2 6.12.0-211.61.1.el10_2
- kernel-core RHEL 10.2 6.12.0-211.61.1.el10_2
red hat advisories RHSA-2026:72624RHSA-2026:72623RHSA-2026:72467RHSA-2026:72468
- kernel-rt Linux Micro 6.2 6.12.0-160000.35.1
- kernel-64kb SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.35.1
- kernel-source SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.35.1
- kernel-default SLES 16.0, SLE High Availability Extension 16.0, Linux Micro 6.2 +1 more 6.12.0-160000.35.1
- kernel-default-base SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.35.1.160000.2.16
- kernel-syms SLES 16.0, Linux Micro Extras 6.2, SLES for SAP applications 16.0 6.12.0-160000.35.1
- kernel-azure SLES for SAP applications 16.0, SLES 16.0 6.12.0-160000.35.1
- kernel-obs-qa SLES for SAP applications 16.0, SLES 16.0 6.12.0-160000.35.1
suse advisories SUSE-SU-2026:22112-1SUSE-SU-2026:22127-1SUSE-SU-2026:22117-1SUSE-SU-2026:22099-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.35.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.35.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.35.1
opensuse advisories openSUSE-SU-2026:20965-1
- kernel-rt AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-core AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-modules AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-debug-core AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-debug-modules AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-modules-extra AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel-rt-debug-modules-extra AlmaLinux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel AlmaLinux 8 4.18.0-553.169.1.el8_10
almalinux advisories ALSA-2026:72467ALSA-2026:72468ALSA-2026:72623ALSA-2026:72624
- kernel Rocky Linux 10 6.12.0-211.61.1.el10_2
- kernel Rocky Linux 9 5.14.0-687.53.1.el9_8
- kernel-rt Rocky Linux 8 4.18.0-553.169.1.rt7.510.el8_10
- kernel Rocky Linux 8 4.18.0-553.169.1.el8_10
rocky linux advisories RLSA-2026:72624RLSA-2026:72623RLSA-2026:72467RLSA-2026:72468
- git.kernel.org/stable/c/a3a7d360252c0d84ae8bda067fb296c9e82928d3 commit
- git.kernel.org/stable/c/57e83bfbe1e412ac42daced2086f3c6f9a17bba0 commit
- git.kernel.org/stable/c/c05033cfc5c7699cd4df8d48cef94d01da755f24 commit
- git.kernel.org/stable/c/29a07d691d282faf38c33d4b61839b89399110f9 commit
- git.kernel.org/stable/c/f29709a7a3fc38f5015d850504762cdef0e151f9 commit
- git.kernel.org/stable/c/bdc56a9c46b2a99c12313122b9352b619a2e719e commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-45942 updated cvss 4.7
kernel: ext4: fix e4b bitmap inconsistency reports
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 moreaffected: workaround, no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 moreaffected: workaround, no fix available
-
Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-687.53.1.el9_8, perf 5.14.0-687.53.1.el9_8, rtla 5.14.0-687.53.1.el9_8, python3-perf 5.14.0-687.53.1.el9_8, kernel-devel-matched 5.14.0-687.53.1.el9_8, kernel-64k-devel-matched 5.14.0-687.53.1.el9_8, +7 morefixed: vendor fix RHSA-2026:72623
-
Red Hat Enterprise Linux AppStream (v. 10) rv 6.12.0-211.61.1.el10_2, perf 6.12.0-211.61.1.el10_2, rtla 6.12.0-211.61.1.el10_2, python3-perf 6.12.0-211.61.1.el10_2, kernel-devel-matched 6.12.0-211.61.1.el10_2, kernel-64k-devel-matched 6.12.0-211.61.1.el10_2, +7 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-553.169.1.el8_10, kernel 4.18.0-553.169.1.el8_10, bpftool 4.18.0-553.169.1.el8_10, kernel-core 4.18.0-553.169.1.el8_10, kernel-tools 4.18.0-553.169.1.el8_10, python3-perf 4.18.0-553.169.1.el8_10, +15 morefixed: vendor fix RHSA-2026:72468
-
Red Hat Enterprise Linux BaseOS (v. 9) kernel 5.14.0-687.53.1.el9_8, kernel-64k 5.14.0-687.53.1.el9_8, kernel-core 5.14.0-687.53.1.el9_8, kernel-tools 5.14.0-687.53.1.el9_8, kernel-modules 5.14.0-687.53.1.el9_8, kernel-64k-core 5.14.0-687.53.1.el9_8, +27 morefixed: vendor fix RHSA-2026:72623
-
Red Hat Enterprise Linux BaseOS (v. 10) kernel 6.12.0-211.61.1.el10_2, kernel-64k 6.12.0-211.61.1.el10_2, kernel-core 6.12.0-211.61.1.el10_2, kernel-tools 6.12.0-211.61.1.el10_2, kernel-modules 6.12.0-211.61.1.el10_2, kernel-64k-core 6.12.0-211.61.1.el10_2, +28 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) libperf 5.14.0-687.53.1.el9_8, kernel-debuginfo-common-s390x 5.14.0-687.53.1.el9_8, kernel-debuginfo-common-x86_64 5.14.0-687.53.1.el9_8, kernel-debuginfo-common-aarch64 5.14.0-687.53.1.el9_8, kernel-debuginfo-common-ppc64le 5.14.0-687.53.1.el9_8fixed: vendor fix RHSA-2026:72623
show 8 moreshow fewer
-
Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) libperf 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-s390x 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-x86_64 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-aarch64 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-ppc64le 6.12.0-211.61.1.el10_2fixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-553.169.1.el8_10, kernel-debuginfo-common-aarch64 4.18.0-553.169.1.el8_10, kernel-debuginfo-common-ppc64le 4.18.0-553.169.1.el8_10fixed: vendor fix RHSA-2026:72468
-
Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-kvm 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-core 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-modules 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-debug-kvm 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-debug-core 4.18.0-553.169.1.rt7.510.el8_10, +4 morefixed: vendor fix RHSA-2026:72467
-
Red Hat Enterprise Linux Real Time (v. 9) kernel-rt 5.14.0-687.53.1.el9_8, kernel-rt-64k 5.14.0-687.53.1.el9_8, kernel-rt-core 5.14.0-687.53.1.el9_8, kernel-rt-modules 5.14.0-687.53.1.el9_8, kernel-rt-64k-core 5.14.0-687.53.1.el9_8, kernel-rt-debug-core 5.14.0-687.53.1.el9_8, +14 morefixed: vendor fix RHSA-2026:72623
-
Red Hat Enterprise Linux Real Time (v. 10) kernel-rt 6.12.0-211.61.1.el10_2, kernel-rt-64k 6.12.0-211.61.1.el10_2, kernel-rt-core 6.12.0-211.61.1.el10_2, kernel-rt-modules 6.12.0-211.61.1.el10_2, kernel-rt-64k-core 6.12.0-211.61.1.el10_2, kernel-rt-debug-core 6.12.0-211.61.1.el10_2, +14 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt 5.14.0-687.53.1.el9_8, kernel-rt-core 5.14.0-687.53.1.el9_8, kernel-rt-modules 5.14.0-687.53.1.el9_8, kernel-rt-debug-core 5.14.0-687.53.1.el9_8, kernel-rt-modules-core 5.14.0-687.53.1.el9_8, kernel-rt-debug-modules 5.14.0-687.53.1.el9_8, +4 morefixed: vendor fix RHSA-2026:72623
-
Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt 6.12.0-211.61.1.el10_2, kernel-rt-core 6.12.0-211.61.1.el10_2, kernel-rt-modules 6.12.0-211.61.1.el10_2, kernel-rt-debug-core 6.12.0-211.61.1.el10_2, kernel-rt-modules-core 6.12.0-211.61.1.el10_2, kernel-rt-debug-modules 6.12.0-211.61.1.el10_2, +4 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-core 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-modules 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-debug-core 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-debug-modules 4.18.0-553.169.1.rt7.510.el8_10, kernel-rt-modules-extra 4.18.0-553.169.1.rt7.510.el8_10, +2 morefixed: vendor fix RHSA-2026:72467
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 23 d ago
Exploit prediction
0.13% chance of exploitation in the next 30 days, higher than 2% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization
- Technology feeds
References
- git.kernel.org /stable/c/a3a7d360252c0d84ae8bda067fb296c9e82928d3
-
git.kernel.org
/stable/c/57e83bfbe1e412ac42daced2086f3c6f9a17bba0
patch
-
git.kernel.org
/stable/c/c05033cfc5c7699cd4df8d48cef94d01da755f24
patch
-
git.kernel.org
/stable/c/29a07d691d282faf38c33d4b61839b89399110f9
patch
-
git.kernel.org
/stable/c/f29709a7a3fc38f5015d850504762cdef0e151f9
patch
-
git.kernel.org
/stable/c/bdc56a9c46b2a99c12313122b9352b619a2e719e
patch
Sources
- CVE List CVE-2026-45942
- NVD CVE-2026-45942
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.