xfs
[Top] [All Lists]

[XFS updates] XFS development tree branch, master, updated. v3.6-rc1-9-g

To: xfs@xxxxxxxxxxx
Subject: [XFS updates] XFS development tree branch, master, updated. v3.6-rc1-9-gb686d1f
From: xfs@xxxxxxxxxxx
Date: Tue, 28 Aug 2012 14:31:13 -0500
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "XFS development tree".

The branch, master has been updated
  b686d1f xfs: xfs_seek_hole() refinement with hole searching from page cache 
for unwritten extents
  52f1acc xfs: xfs_seek_data() refinement with unwritten extents check up from 
page cache
  d126d43 xfs: Introduce a helper routine to probe data or hole offset from 
page cache
  834ab12 xfs: Remove type argument from xfs_seek_data()/xfs_seek_hole()
  e599b32 xfs: fix race while discarding buffers [V4]
      from  643bfc061c47e9c7661324a09fb0a0bc6601e5d6 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b686d1f79acb65c6a34473c15fcfa2ee54aed8e2
Author: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date:   Tue Aug 21 17:12:18 2012 +0800

    xfs: xfs_seek_hole() refinement with hole searching from page cache for 
unwritten extents
    
    xfs_seek_hole() refinement with hole searching from page cache for 
unwritten extent.
    
    Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 52f1acc8b56a333fbc7218711c3fa2fb3bf78b92
Author: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date:   Tue Aug 21 17:12:07 2012 +0800

    xfs: xfs_seek_data() refinement with unwritten extents check up from page 
cache
    
    xfs_seek_data() refinement with unwritten extents check up from page cache.
    
    Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit d126d43f631f996daeee5006714fed914be32368
Author: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date:   Tue Aug 21 17:11:57 2012 +0800

    xfs: Introduce a helper routine to probe data or hole offset from page cache
    
    Introduce helpers to probe data or hole offset from page cache.
    
    Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 834ab12228fad777a11007a24cb6286b02c9a41c
Author: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date:   Tue Aug 21 17:11:45 2012 +0800

    xfs: Remove type argument from xfs_seek_data()/xfs_seek_hole()
    
    The type is already indicated by the function naming explicitly, so this 
argument
    can be omitted from those calls.
    
    Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit e599b3253c5e49f7a2a579eef2fc2aa066989ef5
Author: Carlos Maiolino <cmaiolino@xxxxxxxxxx>
Date:   Fri Aug 10 15:01:51 2012 -0300

    xfs: fix race while discarding buffers [V4]
    
    While xfs_buftarg_shrink() is freeing buffers from the dispose list (filled 
with
    buffers from lru list), there is a possibility to have xfs_buf_stale() 
racing
    with it, and removing buffers from dispose list before xfs_buftarg_shrink() 
does
    it.
    
    This happens because xfs_buftarg_shrink() handle the dispose list without
    locking and the test condition in xfs_buf_stale() checks for the buffer 
being in
    *any* list:
    
    if (!list_empty(&bp->b_lru))
    
    If the buffer happens to be on dispose list, this causes the buffer counter 
of
    lru list (btp->bt_lru_nr) to be decremented twice (once in 
xfs_buftarg_shrink()
    and another in xfs_buf_stale()) causing a wrong account usage of the lru 
list.
    
    This may cause xfs_buftarg_shrink() to return a wrong value to the memory
    shrinker shrink_slab(), and such account error may also cause an underflowed
    value to be returned; since the counter is lower than the current number of
    items in the lru list, a decrement may happen when the counter is 0, causing
    an underflow on the counter.
    
    The fix uses a new flag field (and a new buffer flag) to serialize buffer
    handling during the shrink process. The new flag field has been designed to 
use
    btp->bt_lru_lock/unlock instead of xfs_buf_lock/unlock mechanism.
    
    dchinner, sandeen, aquini and aris also deserve credits for this.
    
    Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx>
    Reviewed-by: Ben Myers <bpm@xxxxxxx>
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

-----------------------------------------------------------------------

Summary of changes:
 fs/xfs/xfs_buf.c  |    5 +-
 fs/xfs/xfs_buf.h  |   41 +++---
 fs/xfs/xfs_file.c |  379 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 3 files changed, 372 insertions(+), 53 deletions(-)


hooks/post-receive
-- 
XFS development tree

<Prev in Thread] Current Thread [Next in Thread>
  • [XFS updates] XFS development tree branch, master, updated. v3.6-rc1-9-gb686d1f, xfs <=