diff options
| -rw-r--r-- | fs/jbd/transaction.c | 6 | 
1 files changed, 3 insertions, 3 deletions
| diff --git a/fs/jbd/transaction.c b/fs/jbd/transaction.c index 833c1675a00c..006f9ad838a2 100644 --- a/fs/jbd/transaction.c +++ b/fs/jbd/transaction.c @@ -229,6 +229,8 @@ repeat_locked:  		  __log_space_left(journal));  	spin_unlock(&transaction->t_handle_lock);  	spin_unlock(&journal->j_state_lock); + +	lock_map_acquire(&handle->h_lockdep_map);  out:  	if (unlikely(new_transaction))		/* It's usually NULL */  		kfree(new_transaction); @@ -293,9 +295,6 @@ handle_t *journal_start(journal_t *journal, int nblocks)  		handle = ERR_PTR(err);  		goto out;  	} - -	lock_map_acquire(&handle->h_lockdep_map); -  out:  	return handle;  } @@ -417,6 +416,7 @@ int journal_restart(handle_t *handle, int nblocks)  	__log_start_commit(journal, transaction->t_tid);  	spin_unlock(&journal->j_state_lock); +	lock_map_release(&handle->h_lockdep_map);  	handle->h_buffer_credits = nblocks;  	ret = start_this_handle(journal, handle);  	return ret; | 
