mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-09 06:43:09 +00:00
ext4: adjust the layout of the ext4_inode_info structure to save memory
Using pahole, we can see that there are some padding holes in the current ext4_inode_info structure. Adjusting the layout of ext4_inode_info can reduce these holes, resulting in the size of the structure decreasing from 2424 bytes to 2408 bytes. Signed-off-by: Junchao Sun <sunjunchao2870@gmail.com> Reviewed-by: Jan Kara <jack@suse.cz> Link: https://patch.msgid.link/20240603131524.324224-1-sunjunchao2870@gmail.com Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
parent
47ac09b91b
commit
a3c3eecc7c
@ -1058,6 +1058,7 @@ struct ext4_inode_info {
|
||||
|
||||
/* Number of ongoing updates on this inode */
|
||||
atomic_t i_fc_updates;
|
||||
atomic_t i_unwritten; /* Nr. of inflight conversions pending */
|
||||
|
||||
/* Fast commit wait queue for this inode */
|
||||
wait_queue_head_t i_fc_wait;
|
||||
@ -1106,6 +1107,10 @@ struct ext4_inode_info {
|
||||
|
||||
/* mballoc */
|
||||
atomic_t i_prealloc_active;
|
||||
|
||||
/* allocation reservation info for delalloc */
|
||||
/* In case of bigalloc, this refer to clusters rather than blocks */
|
||||
unsigned int i_reserved_data_blocks;
|
||||
struct rb_root i_prealloc_node;
|
||||
rwlock_t i_prealloc_lock;
|
||||
|
||||
@ -1122,10 +1127,6 @@ struct ext4_inode_info {
|
||||
/* ialloc */
|
||||
ext4_group_t i_last_alloc_group;
|
||||
|
||||
/* allocation reservation info for delalloc */
|
||||
/* In case of bigalloc, this refer to clusters rather than blocks */
|
||||
unsigned int i_reserved_data_blocks;
|
||||
|
||||
/* pending cluster reservations for bigalloc file systems */
|
||||
struct ext4_pending_tree i_pending_tree;
|
||||
|
||||
@ -1149,7 +1150,6 @@ struct ext4_inode_info {
|
||||
*/
|
||||
struct list_head i_rsv_conversion_list;
|
||||
struct work_struct i_rsv_conversion_work;
|
||||
atomic_t i_unwritten; /* Nr. of inflight conversions pending */
|
||||
|
||||
spinlock_t i_block_reservation_lock;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user