gfs2: don't lock sd_log_flush_lock in try_rgrp_unlink
In function try_rgrp_unlink, we added a temporary lock of the sd_log_flush_lock while searching the bitmaps. This protected us from problems in which dinodes being freed were still in a state of flux because the rgrp was in an active transaction. It was a kludge. Now that we've straightened out the code for inode eviction, deletes, and all the recovery mess, we no longer need this kludge. This patch removes it, and should improve performance. Signed-off-by: Bob Peterson <rpeterso@redhat.com>
This commit is contained in:
parent
4bd684bc01
commit
e04d339bd8
1 changed files with 0 additions and 2 deletions
|
@ -1806,10 +1806,8 @@ static void try_rgrp_unlink(struct gfs2_rgrpd *rgd, u64 *last_unlinked, u64 skip
|
|||
struct gfs2_rbm rbm = { .rgd = rgd, .bii = 0, .offset = 0 };
|
||||
|
||||
while (1) {
|
||||
down_write(&sdp->sd_log_flush_lock);
|
||||
error = gfs2_rbm_find(&rbm, GFS2_BLKST_UNLINKED, NULL, NULL,
|
||||
true);
|
||||
up_write(&sdp->sd_log_flush_lock);
|
||||
if (error == -ENOSPC)
|
||||
break;
|
||||
if (WARN_ON_ONCE(error))
|
||||
|
|
Loading…
Reference in a new issue