{"id":"CVE-2026-80856","summary":"fuse: fix invalidate lock leak on setattr writeback failure","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nfuse: fix invalidate lock leak on setattr writeback failure\n\nfuse_do_setattr() takes filemap_invalidate_lock() for a DAX truncate\n(fault_blocked = true) and releases it at the out:/error: labels.  But\nwhen a writeback flush is also needed, a write_inode_now() failure\nreturns directly and leaks the lock, so any later fault or truncate on\nthe file stalls on the stale rwsem.\n\nFor example, truncate(2) on a setuid file reaches fuse_do_setattr()\nwith both ATTR_SIZE and ATTR_MODE set:\n\n  truncate(2)\n  └─ do_truncate()\n     ├─ dentry_needs_remove_privs()         # S_ISUID\n     └─ notify_change()                     # KILL_SUID -\u003e ATTR_MODE\n        └─ fuse_setattr()                   # no killpriv:\n           │                                #   ia_valid |= ATTR_MODE\n           └─ fuse_do_setattr()\n              ├─ filemap_invalidate_lock()  # IS_DAX && is_truncate\n              └─ write_inode_now()          # is_wb && ATTR_MODE\n                 └─ if (err)                # e.g. daemon -\u003e -EIO\n                    return err              # \u003c- lock leaked\n\nFix this by adding an unlock label that releases the lock before\nreturning the error, and use it for the fuse_dax_break_layouts()\nfailure path as well.","modified":"2026-09-06T03:46:59.088704887Z","published":"2026-09-04T15:55:09.250Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80856.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/03cfeeb135428fa83f0791d3f8f94d9298cae695"},{"type":"WEB","url":"https://git.kernel.org/stable/c/1758730d9eaa3c06cf415c3446d9f6eed9ed3eed"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8f14906ce9103ab8f2f1ebda45935a0d61b9d763"},{"type":"WEB","url":"https://git.kernel.org/stable/c/92588d187ba4697a322e7aefe5d9e538a87d1cd2"},{"type":"WEB","url":"https://git.kernel.org/stable/c/9afeca0d569c9fc89d758fe7a9339d1e8afb1546"},{"type":"WEB","url":"https://git.kernel.org/stable/c/dd278d954c0e96a9cbd3cc491e07b8267d25f8d5"},{"type":"WEB","url":"https://git.kernel.org/stable/c/e8457ebfd77a46e8d1210e8888ea914ad064558e"},{"type":"WEB","url":"https://git.kernel.org/stable/c/ea9fea370b8de4ffd72e0ef89550415c15637787"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80856.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-80856"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"6ae330cad6ef22ab8347ea9e0707dc56a7c7363f"},{"fixed":"8f14906ce9103ab8f2f1ebda45935a0d61b9d763"},{"fixed":"03cfeeb135428fa83f0791d3f8f94d9298cae695"},{"fixed":"92588d187ba4697a322e7aefe5d9e538a87d1cd2"},{"fixed":"ea9fea370b8de4ffd72e0ef89550415c15637787"},{"fixed":"1758730d9eaa3c06cf415c3446d9f6eed9ed3eed"},{"fixed":"dd278d954c0e96a9cbd3cc491e07b8267d25f8d5"},{"fixed":"e8457ebfd77a46e8d1210e8888ea914ad064558e"},{"fixed":"9afeca0d569c9fc89d758fe7a9339d1e8afb1546"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80856.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"5.10.0"},{"fixed":"5.15.220"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.16.0"},{"fixed":"6.1.187"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.156"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.108"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.49"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.1.13"}]},{"type":"ECOSYSTEM","events":[{"introduced":"7.2.0"},{"fixed":"7.2.3"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80856.json"}}],"schema_version":"1.9.0"}