CVE-2026-80855

    Dashboard / Vulnerabilities / CVE-2026-80855

    CVE-2026-80855

    Published: 4 Sept 2026Last Modified: 15 Sept 2026

    Summary: fuse: fix invalidate lock leak on open O_TRUNC DAX failure

    Details: In the Linux kernel, the following vulnerability has been resolved: fuse: fix invalidate lock leak on open O_TRUNC DAX failure fuse_open() takes filemap_invalidate_lock() for a DAX truncate (dax_truncate = true) and releases it before the out_inode_unlock label. But when fuse_dax_break_layouts() fails, the goto out_inode_unlock skips the unlock and leaks the rwsem, so any later fault or truncate on the file stalls on the stale lock. fuse_dax_break_layouts() can fail with -ERESTARTSYS when a signal interrupts the wait for busy DAX pages to drain: open("file", O_RDWR | O_TRUNC) └─ fuse_open() ├─ filemap_invalidate_lock() # dax_truncate └─ fuse_dax_break_layouts() └─ dax_break_layout() └─ wait_page_idle() # TASK_INTERRUPTIBLE └─ fuse_wait_dax_page() # unlock, schedule, re-lock └─ signal → -ERESTARTSYS goto out_inode_unlock # <- lock leaked Fix this by moving filemap_invalidate_unlock() below the label so that all error paths release the lock, and rename the label to out_unlock as it now covers more than just the inode lock.

    Affected packages

    Package

    Name:

    Purl:

    Affected ranges

    Type: GIT

    Events:

    Introduced- d58366aab86854217b81679d1a9dcd54a2edfc2a

    Affected versions

    v5.15.219
    v5.15.218
    v5.15.217
    v5.15.216
    v5.15.215
    v5.15.214
    v5.15.213
    v5.15.212
    v5.15.211
    v5.15.210
    v5.15.209
    v5.15.208
    v5.15.207
    v5.15.206
    v5.15.205
    v5.15.204
    v5.15.203
    v5.15.202
    v5.15.201
    v5.15.200
    v5.15.199
    v5.15.198
    v5.15.197
    v5.15.196
    v5.15.195
    v5.15.194
    v5.15.193
    v5.15.192
    v5.15.191
    v5.15.190
    v5.15.189
    v5.15.188
    v5.15.187
    v5.15.186
    v5.15.185
    v5.15.184
    v5.15.183
    v5.15.182
    v5.15.181
    v5.15.180
    v5.15.179
    v5.15.178
    v5.15.177
    v5.15.176
    v5.15.175
    v5.15.174
    v5.15.173
    v5.15.172
    v5.15.171
    v5.15.170
    v5.15.169
    v5.15.168
    v5.15.167
    v5.15.166
    v5.15.165
    v5.15.164
    v5.15.163
    v5.15.162
    v5.15.161
    v5.15.160
    v5.15.159
    v5.15.158
    v5.15.157
    v5.15.156
    v5.15.155
    v5.15.154
    v5.15.153
    v5.15.152
    v5.15.151
    v5.15.150
    v5.15.149
    v5.15.148
    v5.15.147
    v5.15.146
    v5.15.145
    v5.15.144
    v5.15.143
    v5.15.142
    v5.15.141
    v5.15.140
    v5.15.139
    v5.15.138
    v5.15.137
    v5.15.136
    v5.15.135
    v5.15.134
    v5.15.133
    v5.15.132
    v5.15.131
    v5.15.130
    v5.15.129
    v5.15.128
    v5.15.127
    v5.15.126
    v5.15.125
    v5.15.124
    v5.15.123
    v5.15.122
    v5.15.121
    v5.15.120
    v5.15.119
    v5.15.118
    v5.15.117
    v5.15.116
    v5.15.115
    v5.15.114
    v5.15.113
    v5.15.112
    v5.15.111
    v5.15.110
    v5.15.109
    v5.15

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High
    CVE-2026-80855 | CVE-DB