CVE-2023-54311
Linux Kernel vulnerability analysis and mitigation

Overview

CVE-2023-54311 is a deadlock vulnerability in the Linux kernel's ext4 filesystem subsystem, specifically triggered when converting an inline directory in nojournal (no journal) mode. The flaw causes a self-deadlock in ext4_finish_convert_inline_dir() when it calls ext4_handle_dirty_dirblock() while already holding the directory lock; a similar issue exists in ext4_incvert_inline_data_nolock() for data files. It affects Linux kernel versions prior to the stable patch releases 5.4.243, 5.10.180, 5.15.112, 6.1.29, 6.2.16, 6.3.3, and 6.4. The vulnerability was published on December 30, 2025, and carries an estimated CVSS severity of Medium with an EPSS score of approximately 0.024% (Feedly, ENISA EUVD).

Technical details

The root cause is a locking logic error (CWE-667: Improper Locking) in the ext4 inline data conversion path. When an ext4 filesystem is mounted without journaling (nojournal mode) and an inline directory is expanded (e.g., by adding files that exceed inline storage capacity), ext4_finish_convert_inline_dir() attempts to mark the directory block dirty via ext4_handle_dirty_dirblock() while the directory inode lock is already held, resulting in a self-deadlock. The same pattern exists in ext4_incvert_inline_data_nolock() for regular data files. Exploitation requires local filesystem access and the ability to create files in an ext4 volume formatted with inline_data support and mounted without journaling (Feedly, ENISA EUVD).

Impact

Successful triggering of this vulnerability causes the affected kernel thread to deadlock, resulting in a denial of service — the process hangs indefinitely and the filesystem or system may become unresponsive. There is no evidence of confidentiality or integrity impact; the primary consequence is availability loss on systems using ext4 with inline_data in nojournal mode. The impact is limited to local users with write access to the affected filesystem (Feedly).

Exploitation steps

  1. Precondition: Obtain local access to a system with an ext4 filesystem formatted with inline_data support and mounted without journaling (e.g., mount -t ext4 -o dirsync /dev/vdc /vdc).
  2. Format the filesystem: mke2fs -Fq -t ext2 -O inline_data -b 4k /dev/vdc 64
  3. Mount without journaling: mount -t ext4 -o dirsync /dev/vdc /vdc
  4. Create an inline directory: mkdir /vdc/file0 && cd /vdc/file0
  5. Populate the directory: touch file0; touch file1 — this stores entries inline.
  6. Consume extended attribute space: attr -s BurnSpaceInEA -V abcde . — fills EA space to force inline-to-block conversion.
  7. Trigger the deadlock: touch supercalifragilisticexpialidocious — adding a file with a long name forces the inline directory conversion, triggering the self-deadlock in ext4_finish_convert_inline_dir() (Feedly, ENISA EUVD).

Indicators of compromise

  • Logs: Kernel logs (dmesg or /var/log/kern.log) showing hung task warnings or deadlock traces involving ext4_finish_convert_inline_dir, ext4_handle_dirty_dirblock, or ext4_incvert_inline_data_nolock.
  • Process: Processes stuck in uninterruptible sleep (D state) on ext4 filesystem operations; visible via ps aux or top with state D.
  • System: System unresponsiveness or filesystem operations hanging indefinitely on ext4 volumes mounted with inline_data and nojournal options.

Mitigation and workarounds

Apply the upstream Linux kernel patches available for the following stable releases: 5.4.243, 5.10.180, 5.15.112, 6.1.29, 6.2.16, 6.3.3, and 6.4. The fixes are available via the kernel stable tree at the referenced git commits. As a workaround, avoid mounting ext4 filesystems with both inline_data feature and nojournal mode simultaneously, or avoid using dirsync mount option in such configurations. Users should update to a patched kernel version as soon as possible (ENISA EUVD, Feedly).

Additional resources


SourceThis report was generated using AI

Related Linux Kernel vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-64557NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-rt-selftests-internal
NoNoJul 29, 2026
CVE-2026-64556NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-64k-devel
NoNoJul 29, 2026
CVE-2026-64555NONEN/A
  • Linux Kernel logoLinux Kernel
  • linux-azure-fde-6.14
NoNoJul 27, 2026
CVE-2026-64554NONEN/A
  • Linux Kernel logoLinux Kernel
  • linux-gcp-6.14
NoYesJul 27, 2026
CVE-2026-64553NONEN/A
  • Linux Kernel logoLinux Kernel
  • kernel-rt-64k-debug-modules-internal
NoYesJul 27, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management