CVE-2024-46682

nfsd: prevent panic for nfsv4.0 closed files in nfs4_show_open

State
Published
Severity
Not scored
Published
Sep 13, 2024
Updated
Oct 21, 2026
Reserved
Sep 11, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

nfsd: prevent panic for nfsv4.0 closed files in nfs4_show_open

Prior to commit 3f29cc82a84c ("nfsd: split sc_status out of sc_type") states_show() relied on sc_type field to be of valid type before calling into a subfunction to show content of a particular stateid. From that commit, we split the validity of the stateid into sc_status and no longer changed sc_type to 0 while unhashing the stateid. This resulted in kernel oopsing for nfsv4.0 opens that stay around and in nfs4_show_open() would derefence sc_file which was NULL.

Instead, for closed open stateids forgo displaying information that relies of having a valid sc_file.

To reproduce: mount the server with 4.0, read and close a file and then on the server cat /proc/fs/nfsd/clients/2/states

[ 513.590804] Call trace: [ 513.590925] _raw_spin_lock+0xcc/0x160 [ 513.591119] nfs4_show_open+0x78/0x2c0 [nfsd] [ 513.591412] states_show+0x44c/0x488 [nfsd] [ 513.591681] seq_read_iter+0x5d8/0x760 [ 513.591896] seq_read+0x188/0x208 [ 513.592075] vfs_read+0x148/0x470 [ 513.592241] ksys_read+0xcc/0x178

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 3f29cc82a84c23cfd12b903029dd26002ca825f5 to before ba0b697de298285301c71c258598226e06494236Affected
  • 3f29cc82a84c23cfd12b903029dd26002ca825f5 to before a204501e1743d695ca2930ed25a2be9f8ced96d3Affected
  • 172d038b7c4d3cfa9fc5ac210577c5c4f8256320Affected
  • 6.6.160 to before 6.7Affected
LinuxLinux
  • 6.9Affected
  • before 6.9Not affected
  • 6.10.8 through 6.10.*Not affected
  • 6.11 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.