lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20241220110620.keisbqz7a7tkn7zz@quack3> Date: Fri, 20 Dec 2024 12:06:20 +0100 From: Jan Kara <jack@...e.cz> To: libaokun@...weicloud.com Cc: linux-ext4@...r.kernel.org, tytso@....edu, adilger.kernel@...ger.ca, jack@...e.cz, linux-kernel@...r.kernel.org, yi.zhang@...wei.com, yangerkun@...wei.com, Baokun Li <libaokun1@...wei.com> Subject: Re: [PATCH 5/5] ext4: pack holes in ext4_inode_info On Fri 20-12-24 14:07:57, libaokun@...weicloud.com wrote: > From: Baokun Li <libaokun1@...wei.com> > > When CONFIG_DEBUG_SPINLOCK is not enabled (general case), there are four > 4 bytes holes and one 2 bytes hole in struct ext4_inode_info. Move the > members to pack the four 4 bytes holes. > > Signed-off-by: Baokun Li <libaokun1@...wei.com> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@...e.cz> Honza > --- > fs/ext4/ext4.h | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h > index 203a900fd789..345dda2310d0 100644 > --- a/fs/ext4/ext4.h > +++ b/fs/ext4/ext4.h > @@ -1060,6 +1060,8 @@ struct ext4_inode_info { > /* Number of ongoing updates on this inode */ > atomic_t i_fc_updates; > > + spinlock_t i_raw_lock; /* protects updates to the raw inode */ > + > /* Fast commit wait queue for this inode */ > wait_queue_head_t i_fc_wait; > > @@ -1097,8 +1099,6 @@ struct ext4_inode_info { > struct inode vfs_inode; > struct jbd2_inode *jinode; > > - spinlock_t i_raw_lock; /* protects updates to the raw inode */ > - > /* > * File creation time. Its function is same as that of > * struct timespec64 i_{a,c,m}time in the generic inode. > @@ -1141,6 +1141,7 @@ struct ext4_inode_info { > /* quota space reservation, managed internally by quota code */ > qsize_t i_reserved_quota; > #endif > + spinlock_t i_block_reservation_lock; > > /* Lock protecting lists below */ > spinlock_t i_completed_io_lock; > @@ -1151,8 +1152,6 @@ struct ext4_inode_info { > struct list_head i_rsv_conversion_list; > struct work_struct i_rsv_conversion_work; > > - spinlock_t i_block_reservation_lock; > - > /* > * Transactions that contain inode's metadata needed to complete > * fsync and fdatasync, respectively. > -- > 2.46.1 > -- Jan Kara <jack@...e.com> SUSE Labs, CR
Powered by blists - more mailing lists