From: Ethan Tidmore Date: Thu, 26 Feb 2026 16:09:06 +0000 (-0600) Subject: ntfs: Fix possible deadlock X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ac9ccb6e75c5af84095bece1019f22cb45ab43e5;p=thirdparty%2Fkernel%2Flinux.git ntfs: Fix possible deadlock In the error path for ntfs_attr_map_whole_runlist() the lock is not released. Add release for lock. Detected by Smatch: fs/ntfs/attrib.c:5197 ntfs_non_resident_attr_collapse_range() warn: inconsistent returns '&ni->runlist.lock'. Signed-off-by: Ethan Tidmore Reviewed-by: Hyunchul Lee Signed-off-by: Namjae Jeon --- diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c index 71ad870eceacd..2af45df2aab13 100644 --- a/fs/ntfs/attrib.c +++ b/fs/ntfs/attrib.c @@ -5124,8 +5124,10 @@ int ntfs_non_resident_attr_collapse_range(struct ntfs_inode *ni, s64 start_vcn, down_write(&ni->runlist.lock); ret = ntfs_attr_map_whole_runlist(ni); - if (ret) + if (ret) { + up_write(&ni->runlist.lock); return ret; + } len = min(len, end_vcn - start_vcn); for (rl = ni->runlist.rl, dst_cnt = 0; rl && rl->length; rl++)