CVE-2024-27389
Assigner: Linux
Published: 2024-05-01T13:05:09.224Z
State: PUBLISHED
descriptions: value: In the Linux kernel, the following vulnerability has been resolved:

pstore: inode: Only d_invalidate() is needed

Unloading a modular pstore backend with records in pstorefs would
trigger the dput() double-drop warning:

  WARNING: CPU: 0 PID: 2569 at fs/dcache.c:762 dput.part.0+0x3f3/0x410

Using the combo of d_drop()/dput() (as mentioned in
Documentation/filesystems/vfs.rst) isn't the right approach here, and
leads to the reference counting problem seen above. Use d_invalidate()
and update the code to not bother checking for error codes that can
never happen.

---
affected: product: Linux
vendor: Linux
defaultStatus: unaffected
repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
versions: version: 609e28bb139e
lessThan: db6e5e16f1ee
status: affected
versionType: git
version: 609e28bb139e
lessThan: 4cdf9006fc09
status: affected
versionType: git
version: 609e28bb139e
lessThan: cb9e802e49c2
status: affected
versionType: git
version: 609e28bb139e
lessThan: 340682ed1932
status: affected
versionType: git
version: 609e28bb139e
lessThan: a43e0fc5e913
status: affected
versionType: git
product: Linux
vendor: Linux
defaultStatus: affected
repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
versions: version: 5.8
status: affected
version: 0
lessThan: 5.8
status: unaffected
versionType: custom
version: 6.1.83
lessThanOrEqual: 6.1.*
status: unaffected
versionType: custom
version: 6.6.23
lessThanOrEqual: 6.6.*
status: unaffected
versionType: custom
version: 6.7.11
lessThanOrEqual: 6.7.*
status: unaffected
versionType: custom
version: 6.8.2
lessThanOrEqual: 6.8.*
status: unaffected
versionType: custom
version: 6.9
lessThanOrEqual: *
status: unaffected
versionType: original_commit_for_fix
title: pstore: inode: Only d_invalidate() is needed
x_generator: engine: bippy-d175d3acf727