From 716b8a12118a5be7d46aa068c3767123550909ac Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 24 Aug 2026 20:41:53 +0200 Subject: [PATCH] ceph: consistently use `u32` for `time_warp_seq` Previously, both `u32` and `u64` was used with implicit casts. All this does is add useless overhead. This will allow better struct packing in `struct ceph_cap_snap`. Signed-off-by: Max Kellermann Reviewed-by: Viacheslav Dubeyko Reviewed-by: Alex Markuze Signed-off-by: Ilya Dryomov --- fs/ceph/inode.c | 6 +++--- fs/ceph/super.h | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c index d52e2b389e0b..0f8878e94a25 100644 --- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -912,7 +912,7 @@ void ceph_inode_set_subvolume(struct inode *inode, u64 subvolume_id) } void ceph_fill_file_time(struct inode *inode, int issued, - u64 time_warp_seq, struct timespec64 *ctime, + u32 time_warp_seq, struct timespec64 *ctime, struct timespec64 *mtime, struct timespec64 *atime) { struct ceph_client *cl = ceph_inode_to_client(inode); @@ -936,7 +936,7 @@ void ceph_fill_file_time(struct inode *inode, int issued, ceph_seq_cmp(time_warp_seq, ci->i_time_warp_seq) > 0) { /* the MDS did a utimes() */ doutc(cl, "mtime %ptSp -> %ptSp tw %d -> %d\n", &imtime, mtime, - ci->i_time_warp_seq, (int)time_warp_seq); + ci->i_time_warp_seq, time_warp_seq); inode_set_mtime_to_ts(inode, *mtime); inode_set_atime_to_ts(inode, *atime); @@ -968,7 +968,7 @@ void ceph_fill_file_time(struct inode *inode, int issued, } } if (warn) /* time_warp_seq shouldn't go backwards */ - doutc(cl, "%p mds time_warp_seq %llu < %u\n", inode, + doutc(cl, "%p mds time_warp_seq %u < %u\n", inode, time_warp_seq, ci->i_time_warp_seq); } diff --git a/fs/ceph/super.h b/fs/ceph/super.h index 6fb3906f7214..e6b8f9db4462 100644 --- a/fs/ceph/super.h +++ b/fs/ceph/super.h @@ -281,7 +281,7 @@ struct ceph_cap_snap { u64 size; u64 change_attr; struct timespec64 mtime, atime, ctime, btime; - u64 time_warp_seq; + u32 time_warp_seq; u64 truncate_size; u32 truncate_seq; bool writing; /* a sync write is still in progress */ @@ -1115,7 +1115,7 @@ extern int ceph_fill_file_size(struct inode *inode, int issued, u32 truncate_seq, u64 truncate_size, u64 size); extern void ceph_inode_set_subvolume(struct inode *inode, u64 subvolume_id); extern void ceph_fill_file_time(struct inode *inode, int issued, - u64 time_warp_seq, struct timespec64 *ctime, + u32 time_warp_seq, struct timespec64 *ctime, struct timespec64 *mtime, struct timespec64 *atime); extern int ceph_fill_inode(struct inode *inode, struct page *locked_page,