Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=105fd108a66ceff2b0fb710582b97d61ee4c9d40
Commit:     105fd108a66ceff2b0fb710582b97d61ee4c9d40
Parent:     cee9e8c5cb1554e9e85ad764d27b6c808555ed89
Author:     Andrew Morton <[EMAIL PROTECTED]>
AuthorDate: Fri Mar 23 00:10:02 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Fri Mar 23 11:01:22 2007 -0700

    [PATCH] "ext[34]: EA block reference count racing fix" performance fix
    
    A little mistake in 8a2bfdcbfa441d8b0e5cb9c9a7f45f77f80da465 is making all
    transactions synchronous, which reduces ext3 performance to comical levels.
    
    Cc: Mingming Cao <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 fs/ext3/xattr.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/fs/ext3/xattr.c b/fs/ext3/xattr.c
index 12f7dda..f58cbb2 100644
--- a/fs/ext3/xattr.c
+++ b/fs/ext3/xattr.c
@@ -495,7 +495,8 @@ ext3_xattr_release_block(handle_t *handle, struct inode 
*inode,
                BHDR(bh)->h_refcount = cpu_to_le32(
                                le32_to_cpu(BHDR(bh)->h_refcount) - 1);
                error = ext3_journal_dirty_metadata(handle, bh);
-               handle->h_sync = 1;
+               if (IS_SYNC(inode))
+                       handle->h_sync = 1;
                DQUOT_FREE_BLOCK(inode, 1);
                ea_bdebug(bh, "refcount now=%d; releasing",
                          le32_to_cpu(BHDR(bh)->h_refcount));
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to