diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2023-04-27 20:05:42 +0200 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2023-04-30 12:37:28 +0200 |
commit | db2993a423e3fd0e4878f4d3ac66fe717f5f072e (patch) | |
tree | 69f8bd25a3c0fc7501ab1ec2aaf23ba39f8c7b0f | |
parent | a5ffd7b6e91a12975ae30de863437cc04387576a (diff) | |
download | linux-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.h | 2 |
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; }; |