Cloudanix VulnDB

CVE-2025-22113

None

CVSS

—

EPSS

0.2%

Published

Apr 16, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in Linux file-system shutdown handling can cause the system to crash when certain errors occur during unmount.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Moderate
Impact
Denial Of Service
Component
OS kernel
Class
Race Condition
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Race condition in ext4 that allows update_super_work to invoke jbd2_journal_start after the journal has set JBD2_UNMOUNT during destruction, triggering a BUG_ON in start_this_handle.

Why it matters to the business

Unexpected kernel crashes during filesystem unmount under error conditions can interrupt services, risk data inconsistency on ext4 volumes, and require manual recovery in affected Linux deployments.

How an attack unfolds

Error paths in ext4_inode_error schedule superblock update work; concurrent unmount destroys the journal and sets the unmount flag; the queued work then attempts a journaled transaction and hits the BUG_ON. Threat actors listed in related kernel privilege-escalation campaigns may chain this for denial of service.

How to fix it

Apply the listed fixed package versions for each affected Red Hat JBoss EAP 7.4 component on EL9 (for example eap7-activemq-artemis 2.16.0-19.redhat_00053.1.el9eap, eap7-byte-buddy 1.11.12-3.redhat_00003.1.el9eap, and similarly for all other listed packages). Reboot or restart affected services after update.

How to confirm the fix worked

Verify installed package versions match or exceed the fixed releases provided for each EAP component; confirm absence of the BUG_ON pattern in kernel logs after applying updates and exercising unmount/error paths.

Typical attack path

  1. Trigger ext4 error handling that calls schedule_work on s_sb_upd_work
  2. Initiate filesystem unmount which calls jbd2_journal_destroy
  3. Journal thread sets JBD2_UNMOUNT and commits final transaction
  4. Workqueue runs update_super_work which calls jbd2_journal_start
  5. start_this_handle evaluates the flag and executes BUG_ON

How to detect it

Search kernel ring buffer and syslog for BUG_ON messages referencing JBD2_UNMOUNT or ext4_handle_error during umount; correlate with ext4_inode_error and schedule_work calls on s_sb_upd_work.

  • BUG_ON(journal->j_flags & JBD2_UNMOUNT)
  • update_super_work
  • ext4_kill_sb
  • jbd2_journal_destroy
  • JBD2_UNMOUNT

What your security team should do

  • Prioritize patching all listed EAP 7.4 packages to the exact fixed versions within the CISA-style remediation window
  • Monitor kernel logs for JBD2_UNMOUNT BUG_ON occurrences on ext4 systems
  • Test unmount and error-injection scenarios in staging before production rollout
  • Review downstream dependents of the affected EAP components for additional exposure

The record

In the Linux kernel, the following vulnerability has been resolved: ext4: avoid journaling sb update on error if journal is destroying Presently we always BUG_ON if trying to start a transaction on a journal marked with JBD2_UNMOUNT, since this should never happen. However, while ltp running stress tests, it was observed that in case of some error handling paths, it is possible for update_super_work to start a transaction after the journal is destroyed eg: (umount) ext4_kill_sb kill_block_super generic_shutdown_super sync_filesystem /* commits all txns */ evict_inodes /* might start a new txn */ ext4_put_super flush_work(&sbi->s_sb_upd_work) /* flush the workqueue */ jbd2_journal_destroy journal_kill_thread journal->j_flags |= JBD2_UNMOUNT; jbd2_journal_commit_transaction jbd2_journal_get_descriptor_buffer jbd2_journal_bmap ext4_journal_bmap ext4_map_blocks ... ext4_inode_error ext4_handle_error schedule_work(&sbi->s_sb_upd_work) /* work queue kicks in */ update_super_work jbd2_journal_start start_this_handle BUG_ON(journal->j_flags & JBD2_UNMOUNT) Hence, introduce a new mount flag to indicate journal is destroying and only do a journaled (and deferred) update of sb if this flag is not set. Otherwise, just fallback to an un-journaled commit. Further, in the journal destroy path, we have the following sequence: 1. Set mount flag indicating journal is destroying 2. force a commit and wait for it 3. flush pending sb updates This sequence is important as it ensures that, after this point, there is no sb update that might be journaled so it is safe to update the sb outside the journal. (To avoid race discussed in 2d01ddc86606) Also, we don't need a similar check in ext4_grp_locked_error since it is only called from mballoc and AFAICT it would be always valid to schedule work here.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:10 kernel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-devel-matched 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-devel-matched 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-64k-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-abi-stablelists 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-cross-headers 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-devel-matched 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-debug-uki-virt 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-devel-matched 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-doc 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-headers 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-kvm 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-kvm 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-rt-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-tools 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-tools-libs 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-tools-libs-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-uki-virt 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-uki-virt-addons 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-devel 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-devel-matched 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules-core 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules-extra 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 libperf 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 perf 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 python3-perf 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 rtla 0 6.12.0-55.25.1.el10_0
AlmaLinux:10 rv 0 6.12.0-55.25.1.el10_0
AlmaLinux:9 kernel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-abi-stablelists 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-cross-headers 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-uki-virt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-doc 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-headers 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-kvm 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-kvm 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools-libs 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools-libs-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-uki-virt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-uki-virt-addons 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 libperf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 perf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 python3-perf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 rtla 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 rv 0 5.14.0-570.30.1.el9_6
Debian:12 linux 0 No fix
Debian:13 linux 0 No fix
Debian:13 linux 0 6.12.48-1
Debian:14 linux 0 6.16.3-1
Linux Kernel 5.11.0 6.12.46
SUSE:Linux Enterprise High Availability Extension 15 SP6 kernel-default 0 6.4.0-150600.23.60.5
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-default 0 6.4.0-150600.23.60.5
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_13 0 1-150600.1.5.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_13 0 1-150600.13.6.4
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-64kb 0 6.4.0-150600.23.60.4
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default 0 6.4.0-150600.23.60.5
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default-base 0 6.4.0-150600.23.60.5.150600.12.26.4
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-source 0 6.4.0-150600.23.60.4
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-zfcpdump 0 6.4.0-150600.23.60.4
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-coco_debug 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-source-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-syms-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-docs 0 6.4.0-150600.23.60.3
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-obs-build 0 6.4.0-150600.23.60.3
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-source 0 6.4.0-150600.23.60.4
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-syms 0 6.4.0-150600.23.60.4
SUSE:Linux Enterprise Module for Legacy 15 SP6 kernel-default 0 6.4.0-150600.23.60.5
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-azure 0 6.4.0-150600.8.43.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-source-azure 0 6.4.0-150600.8.43.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-syms-azure 0 6.4.0-150600.8.43.1
SUSE:Linux Enterprise Workstation Extension 15 SP6 kernel-default 0 6.4.0-150600.23.60.5
SUSE:Real Time Module 15 SP6 kernel-rt 0 6.4.0-150600.10.44.1
SUSE:Real Time Module 15 SP6 kernel-rt_debug 0 6.4.0-150600.10.44.1
SUSE:Real Time Module 15 SP6 kernel-source-rt 0 6.4.0-150600.10.44.1
SUSE:Real Time Module 15 SP6 kernel-syms-rt 0 6.4.0-150600.10.44.1
openSUSE:Leap 15.6 dtb-aarch64 0 6.4.0-150600.23.60.3
openSUSE:Leap 15.6 kernel-64kb 0 6.4.0-150600.23.60.4
openSUSE:Leap 15.6 kernel-azure 0 6.4.0-150600.8.43.1
openSUSE:Leap 15.6 kernel-debug 0 6.4.0-150600.23.60.4
openSUSE:Leap 15.6 kernel-default 0 6.4.0-150600.23.60.5
openSUSE:Leap 15.6 kernel-default-base 0 6.4.0-150600.23.60.5.150600.12.26.4
openSUSE:Leap 15.6 kernel-docs 0 6.4.0-150600.23.60.3
openSUSE:Leap 15.6 kernel-kvmsmall 0 6.4.0-150600.23.60.4
openSUSE:Leap 15.6 kernel-obs-build 0 6.4.0-150600.23.60.3
openSUSE:Leap 15.6 kernel-obs-qa 0 6.4.0-150600.23.60.2
openSUSE:Leap 15.6 kernel-rt 0 6.4.0-150600.10.44.1
openSUSE:Leap 15.6 kernel-rt_debug 0 6.4.0-150600.10.44.1
openSUSE:Leap 15.6 kernel-source 0 6.4.0-150600.23.60.4
openSUSE:Leap 15.6 kernel-source-azure 0 6.4.0-150600.8.43.1
openSUSE:Leap 15.6 kernel-source-rt 0 6.4.0-150600.10.44.1
openSUSE:Leap 15.6 kernel-syms 0 6.4.0-150600.23.60.4
openSUSE:Leap 15.6 kernel-syms-azure 0 6.4.0-150600.8.43.1

Related vulnerabilities