nfsd: initialize DRC hash table before registering shrinker
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.12.109, 6.18.50, 7.2.4
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: nfsd: initialize DRC hash table before registering shrinker shrinker_register() precedes the INIT_LIST_HEAD loop and the drc_hashsize store. On weakly-ordered architectures (arm64, ppc), a shrinker scan can observe drc_hashsize before the bucket list heads are initialized, causing a NULL deref in the DRC shrinker callback. Move bucket initialization and the drc_hashsize store before shrinker_register() so the hash table is fully initialized before it becomes visible to the shrinker.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 8eea99a81c6f67c08fedd7db2ccd09aa93db69a7 · fixed in f060f43a67635dbb393bf5dcbfc3e8b9a44942cb; From 8eea99a81c6f67c08fedd7db2ccd09aa93db69a7 · fixed in b57bd8cb739cb3cf88bdb1a5903a42a707a5c282; From 8eea99a81c6f67c08fedd7db2ccd09aa93db69a7 · fixed in 431c70ca5163c98c746f22f16cd58ca5aefec6dc; From 8eea99a81c6f67c08fedd7db2ccd09aa93db69a7 · fixed in b0c58934f5cc4f05b63ef6605dd10c1d0d489e88
- Linux Linux
6.7
- KernelLinux
From 6.7.0 · fixed in 6.12.109; From 6.13.0 · fixed in 6.18.50; From 6.19.0 · fixed in 7.2.4