hfsplus: set ctime after setxattr and removexattr

The generic/728 test-case complains that:
(1) Expected ctime needs to be changed after setxattr;
(2) Expected ctime needs to be changed after removexattr.

This patch adds calling inode_set_ctime_current() in
__hfsplus_setxattr() and hfsplus_removexattr().

sudo ./check generic/728
FSTYP         -- hfsplus
PLATFORM      -- Linux/x86_64 hfsplus-testing-0001 7.0.0-rc1+ #6 SMP PREEMPT_DYNAMIC Mon Mar  9 14:29:30 PDT 2026
MKFS_OPTIONS  -- /dev/loop51
MOUNT_OPTIONS -- /dev/loop51 /mnt/scratch

generic/728 35s ...  44s
Ran: generic/728
Passed all 1 tests

cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
cc: Yangtao Li <frank.li@vivo.com>
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
Link: https://lore.kernel.org/r/20260309214947.1114618-2-slava@dubeyko.com
Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
This commit is contained in:
Viacheslav Dubeyko 2026-03-09 14:49:48 -07:00
parent b6b592275a
commit e89b5724aa

View File

@ -410,6 +410,8 @@ int __hfsplus_setxattr(struct inode *inode, const char *name,
goto end_setxattr;
}
inode_set_ctime_current(inode);
end_setxattr:
hfs_find_exit(&cat_fd);
hfs_dbg("finished: res %d\n", err);
@ -895,6 +897,8 @@ static int hfsplus_removexattr(struct inode *inode, const char *name)
goto end_removexattr;
}
inode_set_ctime_current(inode);
end_removexattr:
hfs_find_exit(&cat_fd);