summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>2023-04-27 20:05:42 +0200
committerIlya Dryomov <idryomov@gmail.com>2023-04-30 12:37:28 +0200
commitdb2993a423e3fd0e4878f4d3ac66fe717f5f072e (patch)
tree69f8bd25a3c0fc7501ab1ec2aaf23ba39f8c7b0f
parenta5ffd7b6e91a12975ae30de863437cc04387576a (diff)
downloadlinux-db2993a423e3fd0e4878f4d3ac66fe717f5f072e.tar.gz
linux-db2993a423e3fd0e4878f4d3ac66fe717f5f072e.tar.bz2
linux-db2993a423e3fd0e4878f4d3ac66fe717f5f072e.zip
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 <christophe.jaillet@wanadoo.fr> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
-rw-r--r--fs/ceph/mds_client.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ceph/mds_client.h b/fs/ceph/mds_client.h
index 18b026b1ac63..724307ff89cd 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;
};