From: Christophe JAILLET Date: Thu, 27 Apr 2023 18:05:42 +0000 (+0200) Subject: ceph: reorder fields in 'struct ceph_snapid_map' X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=db2993a423e3fd0e4878f4d3ac66fe717f5f072e;p=linux.git ceph: reorder fields in 'struct ceph_snapid_map' Group some variables based on their sizes to reduce holes. On x86_64, this shrinks the size of 'struct ceph_snapid_map' from 72 to 64 bytes. When such a structure is allocated, because of the way memory allocation works, when 72 bytes were requested, 96 bytes were allocated. So, on x86_64, this change saves 32 bytes per allocation and has the structure fit in a single cacheline. Signed-off-by: Christophe JAILLET Reviewed-by: Jeff Layton Signed-off-by: Ilya Dryomov --- diff --git a/fs/ceph/mds_client.h b/fs/ceph/mds_client.h index 18b026b1ac63f..724307ff89cd9 100644 --- a/fs/ceph/mds_client.h +++ b/fs/ceph/mds_client.h @@ -355,8 +355,8 @@ struct ceph_snapid_map { struct rb_node node; struct list_head lru; atomic_t ref; - u64 snap; dev_t dev; + u64 snap; unsigned long last_used; };