High · published July 10, 2025
In the Linux kernel, the following vulnerability has been resolved:
smb: Log an error when close_all_cached_dirs fails
Under low-memory conditions, close_all_cached_dirs() can't move the
dentries to a separate list to dput() them once the locks are dropped.
This will result in a "Dentry still in use" error, so add an error
message that makes it clear this is what happened:
[ 495.281119] CIFS: VFS: \\otters.example.com\share Out of memory while dropping dentries
[ 495.281595] ------------[ cut here ]------------
[ 495.281887] BUG: Dentry ffff888115531138{i=78,n=/} still in use (2) [unmount of cifs cifs]
[ 495.282391] WARNING: CPU: 1 PID: 2329 at fs/dcache.c:1536 umount_check+0xc8/0xf0
Also, bail out of looping through all tcons as soon as a single
allocation fails, since we're already in trouble, and kmalloc() attempts
for subseqeuent tcons are likely to fail just like the first one did.
| Product | Versions | Fixed in |
|---|---|---|
| linux/linux_kernel | < 6.6.95 | 6.6.95 |
| linux/linux_kernel | ≥ 6.7, < 6.12.35 | 6.12.35 |
| linux/linux_kernel | ≥ 6.13, < 6.15.4 | 6.15.4 |
| linux/linux_kernel | all versions | — |
| linux/linux_kernel | all versions | — |