summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBaolin Liu <liubaolin@kylinos.cn>2026-08-21 13:32:34 +0800
committerNamjae Jeon <linkinjeon@kernel.org>2026-08-26 20:15:42 +0900
commit8efe00b098b5b3618c885d2a35a5edccfbfbec7d (patch)
tree30a0641ce8badcc1246d444ca69b4e4d2922a833
parentada728801999e25e610091362447372f1b25dd25 (diff)
downloadlinux-8efe00b098b5b3618c885d2a35a5edccfbfbec7d.tar.gz
linux-8efe00b098b5b3618c885d2a35a5edccfbfbec7d.zip
ntfs: preserve error code in ntfs_resident_attr_record_add()
ntfs_resident_attr_record_add() collapses every failure to -EIO at its put_err_out label. This defeats the resident-to-non-resident fallback in ntfs_attr_add(), which relies on seeing -ENOSPC to convert the attribute when the MFT record has no room, and also hides -EEXIST and -ENOMEM from callers. Return the actual error code. Every path reaching the label has err set to a negative errno. Fixes: 495e90fa3348 ("ntfs: update attrib operations") Signed-off-by: Baolin Liu <liubaolin@kylinos.cn> Reviewed-by: Hyunchul Lee <hyc.lee@gmail.com> Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
-rw-r--r--fs/ntfs/attrib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c
index 60264833bb63..3663259f0b7d 100644
--- a/fs/ntfs/attrib.c
+++ b/fs/ntfs/attrib.c
@@ -2500,7 +2500,7 @@ int ntfs_resident_attr_record_add(struct ntfs_inode *ni, __le32 type,
return offset;
put_err_out:
ntfs_attr_put_search_ctx(ctx);
- return -EIO;
+ return err;
}
/*