{"id":"CVE-2026-89485","title":"lockd: pin next file across nlm_inspect_file lock-drop","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nlockd: pin next file across nlm_inspect_file lock-drop\n\nnlm_traverse_files() pins the current file with f_count++ across\na mutex_unlock for nlm_inspect_file(), but noth…","severity":"critical","cvss":9.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cvssSource":"cna","cwe":["CWE-825"],"vendor":"Linux","product":"Linux","affected":["Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < e3c413f789eaf0170275c7eba523ead73d963f30","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 08a455f87b14c7ff22ae3fdadda62a796a3a5572","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 550c19222c7132c888e23c9d89079ba1c9bc4cca","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 350087f231c11efcd288c310707c40eab63ca583","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < c24bdb7df2f34bdc38ca8a73796f5acb40f1830c","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 41f0a6d31615fcae261bf28a0aa50050dc93a401","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < e999a88133654c6dfc68487fb49da5f20dfa2d4f","Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 526c49cff3f72c3ec74752016380c7567040581b","Linux 2.6.18"],"published":"2026-09-11","updated":"2026-10-19","sourceUpdated":"2026-10-19T08:47:35.868Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-89485","references":[{"url":"https://git.kernel.org/stable/c/e3c413f789eaf0170275c7eba523ead73d963f30"},{"url":"https://git.kernel.org/stable/c/08a455f87b14c7ff22ae3fdadda62a796a3a5572"},{"url":"https://git.kernel.org/stable/c/550c19222c7132c888e23c9d89079ba1c9bc4cca"},{"url":"https://git.kernel.org/stable/c/350087f231c11efcd288c310707c40eab63ca583"},{"url":"https://git.kernel.org/stable/c/c24bdb7df2f34bdc38ca8a73796f5acb40f1830c"},{"url":"https://git.kernel.org/stable/c/41f0a6d31615fcae261bf28a0aa50050dc93a401"},{"url":"https://git.kernel.org/stable/c/e999a88133654c6dfc68487fb49da5f20dfa2d4f"},{"url":"https://git.kernel.org/stable/c/526c49cff3f72c3ec74752016380c7567040581b"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89485.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-89485"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2532183"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-89485"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-89485"},{"url":"https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-89485.mbox"}],"tags":["cve.org","csaf","vex","red-hat","score-dispute"],"epss":0.00714,"epssPercentile":0.53471,"scores":{"cna":9.8,"vendor":7},"ingestedAt":"2026-09-14T15:23:07.452Z","slug":"CVE-2026-89485","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nlockd: pin next file across nlm_inspect_file lock-drop\n\nnlm_traverse_files() pins the current file with f_count++ across\na mutex_unlock for nlm_inspect_file(), but nothing pins the saved\nnext pointer.  A concurrent nlm_release_file() can kfree the next\nfile during the unlock window, and the iterator dereferences freed\nmemory on the next loop step.\n\nPin both current and next before the lock-drop.  Advance by\nswapping the pinned cursors at the end of each iteration so next\nis always held alive across the unlock.\n\nAlways call nlm_file_release() after dropping the iteration pin,\nregardless of whether the file matched the predicate.  Use\nnlm_file_inuse(), which does a live walk of the inode lock list,\nrather than the cached f_locks field, so skipped files that never\nran nlm_inspect_file() are evaluated correctly.\n\nBecause every file in a hash bucket is now pinned and released,\nfiles skipped by the is_failover_file predicate that have no\nlocks, blocks, shares, or external references are deleted during\ntraversal.  The old code never evaluated skipped files for\ncleanup.  The new behavior is intentional: such files are stale\nand should not persist in the table.\n\n## Affected\n\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < e3c413f789eaf0170275c7eba523ead73d963f30`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 08a455f87b14c7ff22ae3fdadda62a796a3a5572`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 550c19222c7132c888e23c9d89079ba1c9bc4cca`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 350087f231c11efcd288c310707c40eab63ca583`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < c24bdb7df2f34bdc38ca8a73796f5acb40f1830c`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 41f0a6d31615fcae261bf28a0aa50050dc93a401`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < e999a88133654c6dfc68487fb49da5f20dfa2d4f`\n- `Linux >= 01df9c5e918ae5559f2d96da0143f8bfbb9e6171 < 526c49cff3f72c3ec74752016380c7567040581b`\n- `Linux 2.6.18`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Vendor advisories\n\n- **Red Hat VEX** · Moderate · affected: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 9, Red Hat OpenShift Container Platform 4 · no fix planned: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 9, Red Hat OpenShift Container Platform 4 · updated 2026-09-18 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89485.json)","depth":"midnight","depthScore":54,"depthScoreParts":{"impact":53.9,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[{"seq":224742,"id":"CVE-2026-89485","ts":1792401513082,"field":"cvss","old":"7","new":"9.8"},{"seq":224741,"id":"CVE-2026-89485","ts":1792401513082,"field":"severity","old":"high","new":"critical"},{"seq":206959,"id":"CVE-2026-89485","ts":1789749718842,"field":"cvss","old":"9.8","new":"7"},{"seq":206958,"id":"CVE-2026-89485","ts":1789749718842,"field":"severity","old":"critical","new":"high"},{"seq":198018,"id":"CVE-2026-89485","ts":1789384321404,"field":"cvss","old":"5.3","new":"9.8"},{"seq":198017,"id":"CVE-2026-89485","ts":1789384321404,"field":"severity","old":"medium","new":"critical"},{"seq":183525,"id":"CVE-2026-89485","ts":1789356675729,"field":"cvss","old":"9.8","new":"5.3"},{"seq":183524,"id":"CVE-2026-89485","ts":1789356675729,"field":"severity","old":"critical","new":"medium"},{"seq":153268,"id":"CVE-2026-89485","ts":1789285349813,"field":"cvss","old":null,"new":"9.8"},{"seq":153267,"id":"CVE-2026-89485","ts":1789285349813,"field":"severity","old":"none","new":"critical"},{"seq":147610,"id":"CVE-2026-89485","ts":1789270211586,"field":"cvss","old":null,"new":"5.3"},{"seq":147609,"id":"CVE-2026-89485","ts":1789270211586,"field":"severity","old":"none","new":"medium"},{"seq":109374,"id":"CVE-2026-89485","ts":1789183731660,"field":"cvss","old":null,"new":"5.3"},{"seq":109373,"id":"CVE-2026-89485","ts":1789183731660,"field":"severity","old":"none","new":"medium"}]}