Skip to content

Commit

Permalink
ext4: reorder ext4_inode_info structure elements to remove unneeded p…
Browse files Browse the repository at this point in the history
…adding

By reordering the elements in the ext4_inode_info structure, we can
reduce the padding needed on an x86_64 system by 16 bytes.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
  • Loading branch information
Theodore Ts'o committed Jan 10, 2011
1 parent b05e6ae commit 8a2005d
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions fs/ext4/ext4.h
Original file line number Diff line number Diff line change
Expand Up @@ -763,10 +763,10 @@ struct ext4_inode_info {
* near to their parent directory's inode.
*/
ext4_group_t i_block_group;
ext4_lblk_t i_dir_start_lookup;
unsigned long i_state_flags; /* Dynamic state flags */
unsigned long i_flags;

ext4_lblk_t i_dir_start_lookup;
#ifdef CONFIG_EXT4_FS_XATTR
/*
* Extended attributes can be read independently of the main file
Expand Down Expand Up @@ -835,7 +835,6 @@ struct ext4_inode_info {
/* on-disk additional length */
__u16 i_extra_isize;

spinlock_t i_block_reservation_lock;
#ifdef CONFIG_QUOTA
/* quota space reservation, managed internally by quota code */
qsize_t i_reserved_quota;
Expand All @@ -844,9 +843,11 @@ struct ext4_inode_info {
/* completed IOs that might need unwritten extents handling */
struct list_head i_completed_io_list;
spinlock_t i_completed_io_lock;
atomic_t i_ioend_count; /* Number of outstanding io_end structs */
/* current io_end structure for async DIO write*/
ext4_io_end_t *cur_aio_dio;
atomic_t i_ioend_count; /* Number of outstanding io_end structs */

spinlock_t i_block_reservation_lock;

/*
* Transactions that contain inode's metadata needed to complete
Expand Down

0 comments on commit 8a2005d

Please sign in to comment.