[PATCH] ext4: delete invalid ac_b_extent backup inside ext4_mb_use_best_found()

From: brookxu
Date: Tue Aug 04 2020 - 03:49:26 EST


Delete invalid ac_b_extent backup inside ext4_mb_use_best_found(),
we have done this operation in ext4_mb_new_group_pa() and
ext4_mb_new_inode_pa().

Signed-off-by: Chunguang Xu <brookxu@xxxxxxxxxxx>
---
 fs/ext4/mballoc.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
index 9b1c3ad..fb63e9f 100644
--- a/fs/ext4/mballoc.c
+++ b/fs/ext4/mballoc.c
@@ -1704,10 +1704,6 @@ static void ext4_mb_use_best_found(struct ext4_allocation_context *ac,
     ac->ac_b_ex.fe_logical = ac->ac_g_ex.fe_logical;
     ret = mb_mark_used(e4b, &ac->ac_b_ex);
 
-    /* preallocation can change ac_b_ex, thus we store actually
-     * allocated blocks for history */
-    ac->ac_f_ex = ac->ac_b_ex;
-
     ac->ac_status = AC_STATUS_FOUND;
     ac->ac_tail = ret & 0xffff;
     ac->ac_buddy = ret >> 16;
@@ -1726,8 +1722,8 @@ static void ext4_mb_use_best_found(struct ext4_allocation_context *ac,
     /* store last allocated for subsequent stream allocation */
     if (ac->ac_flags & EXT4_MB_STREAM_ALLOC) {
         spin_lock(&sbi->s_md_lock);
-        sbi->s_mb_last_group = ac->ac_f_ex.fe_group;
-        sbi->s_mb_last_start = ac->ac_f_ex.fe_start;
+        sbi->s_mb_last_group = ac->ac_b_ex.fe_group;
+        sbi->s_mb_last_start = ac->ac_b_ex.fe_start;
         spin_unlock(&sbi->s_md_lock);
     }
     /*
--
1.8.3.1