CVE: CVE-2025-38357
Published: 2025-07-25
Description: In the Linux kernel, the following vulnerability has been resolved:

fuse: fix runtime warning on truncate_folio_batch_exceptionals()

The WARN_ON_ONCE is introduced on truncate_folio_batch_exceptionals() to
capture whether the filesystem has removed all DAX entries or not.

And the fix has been applied on the filesystem xfs and ext4 by the commit
0e2f80afcfa6 ("fs/dax: ensure all pages are idle prior to filesystem
unmount").

Apply the missed fix on filesystem fuse to fix the runtime warning:

[    2.011450] ------------[ cut here ]------------
[    2.011873] WARNING: CPU: 0 PID: 145 at mm/truncate.c:89 truncate_folio_batch_exceptionals+0x272/0x2b0
[    2.012468] Modules linked in:
[    2.012718] CPU: 0 UID: 1000 PID: 145 Comm: weston Not tainted 6.16.0-rc2-WSL2-STABLE #2 PREEMPT(undef)
[    2.013292] RIP: 0010:truncate_folio_batch_exceptionals+0x272/0x2b0
[    2.013704] Code: 48 63 d0 41 29 c5 48 8d 1c d5 00 00 00 00 4e 8d 6c 2a 01 49 c1 e5 03 eb 09 48 83 c3 08 49 39 dd 74 83 41 f6 44 1c 08 01 74 ef <0f> 0b 49 8b 34 1e 48 89 ef e8 10 a2 17 00 eb df 48 8b 7d 00 e8 35
[    2.014845] RSP: 0018:ffffa47ec33f3b10 EFLAGS: 00010202
[    2.015279] RAX: [PII_REDACTED] RBX: [PII_REDACTED] RCX: [PII_REDACTED]
[    2.015884] RDX: [PII_REDACTED] RSI: ffffa47ec33f3ca0 RDI: ffff98aa44f3fa80
[    2.016377] RBP: ffff98aa44f3fbf0 R08: ffffa47ec33f3ba8 R09: [PII_REDACTED]
[    2.016942] R10: [PII_REDACTED] R11: [PII_REDACTED] R12: ffffa47ec33f3ca0
[    2.017437] R13: [PII_REDACTED] R14: ffffa47ec33f3ba8 R15: [PII_REDACTED]
[    2.017972] FS:  000079ce006afa40(0000) GS:ffff98aade441000(0000) knlGS:[PII_REDACTED]
[    2.018510] CS:  0010 DS: 0000 ES: 0000 CR0: [PII_REDACTED]
[    2.018987] CR2: 000079ce03e74000 CR3:[PII_REDACTED]84f006 CR4:[PII_REDACTED]372eb0
[    2.019518] Call Trace:
[    2.019729]  <TASK>
[    2.019901]  truncate_inode_pages_range+0xd8/0x400
[    2.020280]  ? timerqueue_add+0x66/0xb0
[    2.020574]  ? get_nohz_timer_target+0x2a/0x140
[    2.020904]  ? timerqueue_add+0x66/0xb0
[    2.021231]  ? timerqueue_del+0x2e/0x50
[    2.021646]  ? __remove_hrtimer+0x39/0x90
[    2.022017]  ? srso_alias_untrain_ret+0x1/0x10
[    2.022497]  ? psi_group_change+0x136/0x350
[    2.023046]  ? _raw_spin_unlock+0xe/0x30
[    2.023514]  ? finish_task_switch.isra.0+0x8d/0x280
[    2.024068]  ? __schedule+0x532/0xbd0
[    2.024551]  fuse_evict_inode+0x29/0x190
[    2.025131]  evict+0x100/0x270
[    2.025641]  ? _atomic_dec_and_lock+0x39/0x50
[    2.026316]  ? __pfx_generic_delete_inode+0x10/0x10
[    2.026843]  __dentry_kill+0x71/0x180
[    2.027335]  dput+0xeb/0x1b0
[    2.027725]  __fput+0x136/0x2b0
[    2.028054]  __x64_sys_close+0x3d/0x80
[    2.028469]  do_syscall_64+0x6d/0x1b0
[    2.028832]  ? clear_bhb_loop+0x30/0x80
[    2.029182]  ? clear_bhb_loop+0x30/0x80
[    2.029533]  ? clear_bhb_loop+0x30/0x80
[    2.029902]  entry_SYSCALL_64_after_hwframe+0x76/0x7e
[    2.030423] RIP: 0033:0x79ce03d0d067
[    2.030820] Code: b8 ff ff ff ff e9 3e ff ff ff 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 03 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 41 c3 48 83 ec 18 89 7c 24 0c e8 c3 a7 f8 ff
[    2.032354] RSP: 002b:00007ffef0498948 EFLAGS: 00000246 ORIG_RAX: [PII_REDACTED]
[    2.032939] RAX: ffffffffffffffda RBX: 00007ffef0498960 RCX: 000079ce03d0d067
[    2.033612] RDX: [PII_REDACTED] RSI: [PII_REDACTED] RDI:[PII_REDACTED]00000d
[    2.034289] RBP: 00007ffef0498a30 R08:[PII_REDACTED]00000d R09: [PII_REDACTED]
[    2.034944] R10: 00007ffef0498978 R11: [PII_REDACTED] R12: [PII_REDACTED]
[    2.035610] R13: 00007ffef0498960 R14: 000079ce03e09ce0 R15: [PII_REDACTED]
[    2.036301]  </TASK>
[    2.036532] ---[ end trace [PII_REDACTED] ]---
CVSS Score: 7.8 (HIGH)
References: https://git.kernel.org/stable/c/b48878aee8e[PII_REDACTED]c7a67c8f0b02f571d75; https://git.kernel.org/stable/c/befd9a71d859ea625eaa84dae1b243efb3df3eca