提交 105fd108 编写于 作者: A Andrew Morton 提交者: Linus Torvalds

[PATCH] "ext[34]: EA block reference count racing fix" performance fix

A little mistake in 8a2bfdcb is making all
transactions synchronous, which reduces ext3 performance to comical levels.

Cc: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 cee9e8c5
...@@ -495,7 +495,8 @@ ext3_xattr_release_block(handle_t *handle, struct inode *inode, ...@@ -495,7 +495,8 @@ ext3_xattr_release_block(handle_t *handle, struct inode *inode,
BHDR(bh)->h_refcount = cpu_to_le32( BHDR(bh)->h_refcount = cpu_to_le32(
le32_to_cpu(BHDR(bh)->h_refcount) - 1); le32_to_cpu(BHDR(bh)->h_refcount) - 1);
error = ext3_journal_dirty_metadata(handle, bh); error = ext3_journal_dirty_metadata(handle, bh);
handle->h_sync = 1; if (IS_SYNC(inode))
handle->h_sync = 1;
DQUOT_FREE_BLOCK(inode, 1); DQUOT_FREE_BLOCK(inode, 1);
ea_bdebug(bh, "refcount now=%d; releasing", ea_bdebug(bh, "refcount now=%d; releasing",
le32_to_cpu(BHDR(bh)->h_refcount)); le32_to_cpu(BHDR(bh)->h_refcount));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册