Read the docs
TI-2026-38077 Aliases CVE-2026-52990GHSA-mrgj-88f9-5g2f

fsnotify: fix inode reference leak in fsnotify_recalc_mask()

Priority LOW 24Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
None · None · High
Fix status
Partial Red Hat: 2 without a fix

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and Red Hat.

Summary

In the Linux kernel, the following vulnerability has been resolved: fsnotify: fix inode reference leak in fsnotify_recalc_mask() fsnotify_recalc_mask() fails to handle the return value of __fsnotify_recalc_mask(), which may return an inode pointer that needs to be released via fsnotify_drop_object() when the connector's HAS_IREF flag transitions from set to cleared. This manifests as a hung task with the following call trace: INFO: task umount:1234 blocked for more than 120 seconds. Call Trace: __schedule schedule fsnotify_sb_delete generic_shutdown_super kill_anon_super cleanup_mnt task_work_run do_exit do_group_exit The race window that triggers the iref leak: Thread A (adding mark) Thread B (removing mark) ────────────────────── ──────────────────────── fsnotify_add_mark_locked(): fsnotify_add_mark_list(): spin_lock(conn->lock) add mark_B(evictable) to list spin_unlock(conn->lock) return /* ---- gap: no lock held ---- */ fsnotify_detach_mark(mark_A): spin_lock(mark_A->lock) clear ATTACHED flag on mark_A spin_unlock(mark_A->lock) fsnotify_put_mark(mark_A) fsnotify_recalc_mask(): spin_lock(conn->lock) __fsnotify_recalc_mask(): /* mark_A skipped: ATTACHED cleared */ /* only mark_B(evictable) remains */ want_iref = false has_iref = true /* not yet cleared */ -> HAS_IREF transitions true -> false -> returns inode pointer spin_unlock(conn->lock) /* BUG: return value discarded! * iput() and fsnotify_put_sb_watched_objects() * are never called */ Fix this by deferring the transition true -> false of HAS_IREF flag from fsnotify_recalc_mask() (Thread A) to fsnotify_put_mark() (thread B).

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00128 2nd percentileScored 2026-11-07
Fix Partial Linux (Linux): 5.11, 5.16, 6.1.191 +5Red Hat: 2 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
LinuxLinux5.10.220 to before 5.11; 5.15.154 to before 5.165.11, 5.16Patch availableCNA
LinuxLinux5.19 and later6.1.191, 6.6.160, 6.12.91, 6.18.33, 7.0.10, 7.1Patch availableCNA
  • Linux VendorLinux Affected 5.10.220 to before 5.11; 5.15.154 to before 5.16 Fixed in 5.11, 5.16 Patch available CNA
  • Linux VendorLinux Affected 5.19 and later Fixed in 6.1.191, 6.6.160, 6.12.91, 6.18.33, 7.0.10, 7.1 Patch available CNA

CPE configurations NVD · 2

CPEVersionsRoleVendor
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*5.10.220 to before 5.11; 5.15.154 to before 5.16; 5.19 to before 6.12.91; 6.13 to before 6.18.33; 6.19 to before 7.0.10VulnerableLinux
cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*7.1 rc1VulnerableLinux
  • cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions 5.10.220 to before 5.11; 5.15.154 to before 5.16; 5.19 to before 6.12.91; 6.13 to before 6.18.33; 6.19 to before 7.0.10 Vulnerable ·Linux
  • cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* Versions 7.1 rc1 Vulnerable ·Linux

Remediation

  • Fix · CNA Linux (Linux) Fixed in 5.11, 5.16
  • Fix · CNA Linux (Linux) Fixed in 6.1.191, 6.6.160, 6.12.91, 6.18.33, 7.0.10, 7.1

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux 10AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 9AffectedNo fix yet: Fix deferred
Not affected: 4 products
  • Red Hat Enterprise Linux 6
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8
  • Red Hat Enterprise Linux 9

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-52990
  2. 2026-10-03 Alias added: GHSA-mrgj-88f9-5g2f
  3. 2026-10-21 Fix available: Linux/[email protected], Linux/Linux@926ec3937b28d30c08427053c8d8af7f9e086d82 · CNA
  4. 2026-10-21 1 new reference · CNA
  5. 2026-10-29 Affected versions changed · Red Hat
  6. 2026-10-30 Fix available: Linux/[email protected], Linux/Linux@ba4d88bfd58739698a9bd2309659c9cc26acf7f7 · CNA
  7. 2026-10-30 1 new reference · CNA
  8. 2026-11-06 CISA SSVC decision points changed

References

  • TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
  • TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
  • TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
  • TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
  • TI-2021-05514 Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACE KEVCVSS 3.1HIGH 8.3
See all 15278 →

Sources