diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index 79f05bc9d6ec7f8606a7fd11083652f11a529b74..7870bdba26b7451e7fc7cb77e490dbd58d412aa7 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -2448,8 +2448,8 @@ static void wait_for_writer(struct btrfs_trans_handle *trans, mutex_unlock(&root->log_mutex); if (atomic_read(&root->log_writers)) schedule(); - mutex_lock(&root->log_mutex); finish_wait(&root->log_writer_wait, &wait); + mutex_lock(&root->log_mutex); } }