diff options
author | Arnd Bergmann <arnd@arndb.de> | 2012-05-14 17:23:13 +0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2012-05-14 17:23:13 +0400 |
commit | 6b204283f2802a92cf91fc14c2c1b04e7295761b (patch) | |
tree | e323818ac7f159c13f646fdf75bf0f016d7ae368 /fs/btrfs/transaction.c | |
parent | ffc505c0b99d6caf5b10d813f9a0ce3576f68996 (diff) | |
parent | a0f5e3631b07cabf624e7d818df76d47d9d21017 (diff) | |
download | linux-6b204283f2802a92cf91fc14c2c1b04e7295761b.tar.xz |
Merge branch 'imx/pinctrl' into imx/dt
Conflicts:
drivers/mmc/host/sdhci-esdhc-imx.c
drivers/net/ethernet/freescale/fec.c
drivers/spi/spi-imx.c
drivers/tty/serial/imx.c
This resolves some simply but annoying conflicts.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'fs/btrfs/transaction.c')
-rw-r--r-- | fs/btrfs/transaction.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c index 11b77a59db62..36422254ef67 100644 --- a/fs/btrfs/transaction.c +++ b/fs/btrfs/transaction.c @@ -73,8 +73,10 @@ loop: cur_trans = root->fs_info->running_transaction; if (cur_trans) { - if (cur_trans->aborted) + if (cur_trans->aborted) { + spin_unlock(&root->fs_info->trans_lock); return cur_trans->aborted; + } atomic_inc(&cur_trans->use_count); atomic_inc(&cur_trans->num_writers); cur_trans->num_joined++; @@ -1400,6 +1402,7 @@ int btrfs_commit_transaction(struct btrfs_trans_handle *trans, ret = commit_fs_roots(trans, root); if (ret) { mutex_unlock(&root->fs_info->tree_log_mutex); + mutex_unlock(&root->fs_info->reloc_mutex); goto cleanup_transaction; } @@ -1411,6 +1414,7 @@ int btrfs_commit_transaction(struct btrfs_trans_handle *trans, ret = commit_cowonly_roots(trans, root); if (ret) { mutex_unlock(&root->fs_info->tree_log_mutex); + mutex_unlock(&root->fs_info->reloc_mutex); goto cleanup_transaction; } |