summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/transaction.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2008-01-16 11:44:43 -0500
committerChris Mason <chris.mason@oracle.com>2008-09-25 11:03:59 -0400
commit2da98f003f4788b0a72c5f87bc55b061f65f30fa (patch)
treee94832937031f347168aaec4e50ab2ced8331ccb /fs/btrfs/transaction.c
parent9cce6c3bfca85bf92e8c9358542a18dfa6c232be (diff)
downloadop-kernel-dev-2da98f003f4788b0a72c5f87bc55b061f65f30fa.zip
op-kernel-dev-2da98f003f4788b0a72c5f87bc55b061f65f30fa.tar.gz
Btrfs: Run igrab on data=ordered inodes to prevent deadlocks during writeout
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/transaction.c')
-rw-r--r--fs/btrfs/transaction.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
index a320580..08f7a18 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
@@ -521,6 +521,7 @@ int btrfs_write_ordered_inodes(struct btrfs_trans_handle *trans,
if (inode) {
if (S_ISREG(inode->i_mode))
filemap_write_and_wait(inode->i_mapping);
+ atomic_dec(&inode->i_count);
iput(inode);
}
mutex_lock(&root->fs_info->fs_mutex);
OpenPOWER on IntegriCloud