diff options
| author | Baolin Liu <liubaolin@kylinos.cn> | 2026-08-21 13:32:34 +0800 |
|---|---|---|
| committer | Namjae Jeon <linkinjeon@kernel.org> | 2026-08-26 20:15:42 +0900 |
| commit | 8efe00b098b5b3618c885d2a35a5edccfbfbec7d (patch) | |
| tree | 30a0641ce8badcc1246d444ca69b4e4d2922a833 | |
| parent | ada728801999e25e610091362447372f1b25dd25 (diff) | |
| download | linux-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.c | 2 |
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; } /* |
