Re: [PATCH] ext4: Change list_for_each to list_for_each_entry

From: harshad shirwadkar
Date: Tue Jan 05 2021 - 16:57:38 EST


Looks good to me, thanks!

Reviewed-by: Harshad Shirwadkar <harshadshirwadkar@xxxxxxxxx>

On Wed, Dec 30, 2020 at 5:56 PM Daejun Park <daejun7.park@xxxxxxxxxxx> wrote:
>
> list_for_each + list_entry can be changed to list_for_each_entry
> It reduces number of variables and lines.
>
> Signed-off-by: Daejun Park <daejun7.park@xxxxxxxxxxx>
> ---
> fs/ext4/fast_commit.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/fs/ext4/fast_commit.c b/fs/ext4/fast_commit.c
> index 5b6bb3ef0f33..dc58471971db 100644
> --- a/fs/ext4/fast_commit.c
> +++ b/fs/ext4/fast_commit.c
> @@ -915,13 +915,11 @@ static int ext4_fc_submit_inode_data_all(journal_t *journal)
> struct super_block *sb = (struct super_block *)(journal->j_private);
> struct ext4_sb_info *sbi = EXT4_SB(sb);
> struct ext4_inode_info *ei;
> - struct list_head *pos;
> int ret = 0;
>
> spin_lock(&sbi->s_fc_lock);
> ext4_set_mount_flag(sb, EXT4_MF_FC_COMMITTING);
> - list_for_each(pos, &sbi->s_fc_q[FC_Q_MAIN]) {
> - ei = list_entry(pos, struct ext4_inode_info, i_fc_list);
> + list_for_each_entry(ei, &sbi->s_fc_q[FC_Q_MAIN], i_fc_list) {
> ext4_set_inode_state(&ei->vfs_inode, EXT4_STATE_FC_COMMITTING);
> while (atomic_read(&ei->i_fc_updates)) {
> DEFINE_WAIT(wait);
> @@ -1099,8 +1097,7 @@ static int ext4_fc_perform_commit(journal_t *journal)
> goto out;
> }
>
> - list_for_each(pos, &sbi->s_fc_q[FC_Q_MAIN]) {
> - iter = list_entry(pos, struct ext4_inode_info, i_fc_list);
> + list_for_each_entry(iter, &sbi->s_fc_q[FC_Q_MAIN], i_fc_list) {
> inode = &iter->vfs_inode;
> if (!ext4_test_inode_state(inode, EXT4_STATE_FC_COMMITTING))
> continue;
> --
> 2.25.1
>