xfs
[Top] [All Lists]

[XFS updates] XFS development tree branch, for-next, updated. v3.2-rc1-1

To: xfs@xxxxxxxxxxx
Subject: [XFS updates] XFS development tree branch, for-next, updated. v3.2-rc1-11468-g8f639dd
From: xfs@xxxxxxxxxxx
Date: Wed, 14 Mar 2012 10:27:53 -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, for-next has been updated
  8f639dd xfs: reimplement fdatasync support
  f5d8d5c xfs: split in-core and on-disk inode log item fields
  339a5f5 xfs: make xfs_inode_item_size idempotent
  8a9c998 xfs: log timestamp updates
  281627d xfs: log file size updates at I/O completion time
  84803fb xfs: log file size updates as part of unwritten extent conversion
  6923e68 xfs: do not require an ioend for new EOF calculation
  aa6bf01 xfs: use per-filesystem I/O completion workqueues
      from  4b217ed9e30f94b6e8e5e262020ef0ceab6113af (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 8f639ddea0c4978ae9b4e46ea041c9e5afe0ee8d
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:55 2012 +0000

    xfs: reimplement fdatasync support
    
    Add an in-memory only flag to say we logged timestamps only, and use it to
    check if fdatasync can optimize away the log force.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit f5d8d5c4bf29c9f7754d9cbe5e27c785106ba872
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:54 2012 +0000

    xfs: split in-core and on-disk inode log item fields
    
    Add a new ili_fields member to the inode log item to isolate the in-memory
    flags from the ones that actually go to the log.  This will allow tracking
    timestamp-only updates for fdatasync and O_DSYNC in the next patch and
    prepares for divorcing the on-disk log format from the in-memory log item
    a little further down the road.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 339a5f5dd9d3ac3d68a594d81507e1eab77ed223
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:53 2012 +0000

    xfs: make xfs_inode_item_size idempotent
    
    Move all code messing with the inode log item flags into 
xfs_inode_item_format
    to make sure xfs_inode_item_size really only calculates the the number of
    vectors, but doesn't modify any state of the inode item.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 8a9c9980f24f6d86e0ec0150ed35fba45d0c9f88
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:52 2012 +0000

    xfs: log timestamp updates
    
    Timestamps on regular files are the last metadata that XFS does not update
    transactionally.  Now that we use the delaylog mode exclusively and made
    the log scode scale extremly well there is no need to bypass that code for
    timestamp updates.  Logging all updates allows to drop a lot of code, and
    will allow for further performance improvements later on.
    
    Note that this patch drops optimized handling of fdatasync - it will be
    added back in a separate commit.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 281627df3eb55e1b729b9bb06fff5ff112929646
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Tue Mar 13 08:41:05 2012 +0000

    xfs: log file size updates at I/O completion time
    
    Do not use unlogged metadata updates and the VFS dirty bit for updating
    the file size after writeback.  In addition to causing various problems
    with updates getting delayed for far too long this also drags in the
    unscalable VFS dirty tracking, and is one of the few remaining unlogged
    metadata updates.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 84803fb78237014cbbc86c0f012b273a199f4691
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:50 2012 +0000

    xfs: log file size updates as part of unwritten extent conversion
    
    If we convert and unwritten extent past the current i_size log the size 
update
    as part of the extent manipulation transactions instead of doing an unlogged
    metadata update later.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit 6923e686f19cb7017fc9777a10e06c2e2b2a2936
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:49 2012 +0000

    xfs: do not require an ioend for new EOF calculation
    
    Replace xfs_ioend_new_eof with a new inline xfs_new_eof helper that
    doesn't require and ioend, and is available also outside of xfs_aops.c.
    
    Also make the code a bit more clear by using a normal if statement
    instead of a slightly misleading MIN().
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

commit aa6bf01d391935a8929333bc2e243084ea0c58db
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Wed Feb 29 09:53:48 2012 +0000

    xfs: use per-filesystem I/O completion workqueues
    
    The new concurrency managed workqueues are cheap enough that we can create
    per-filesystem instead of global workqueues.  This allows us to remove the
    trylock or defer scheme on the ilock, which is not helpful once we have
    outstanding log reservations until finishing a size update.
    
    Also allow the default concurrency on this workqueues so that I/O 
completions
    blocking on the ilock for one inode do not block process for another inode.
    
    Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Ben Myers <bpm@xxxxxxx>

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

Summary of changes:
 fs/xfs/xfs_aops.c        |  183 +++++++++++++++++++-----------
 fs/xfs/xfs_aops.h        |    4 +-
 fs/xfs/xfs_buf.c         |   17 ---
 fs/xfs/xfs_dfrag.c       |   24 ++--
 fs/xfs/xfs_file.c        |   84 +++-----------
 fs/xfs/xfs_iget.c        |    1 -
 fs/xfs/xfs_inode.c       |   94 ++++++----------
 fs/xfs/xfs_inode.h       |   19 +++-
 fs/xfs/xfs_inode_item.c  |  291 +++++++++++++++++-----------------------------
 fs/xfs/xfs_inode_item.h  |   16 ++-
 fs/xfs/xfs_iomap.c       |   19 +++-
 fs/xfs/xfs_iops.c        |   58 ---------
 fs/xfs/xfs_itable.c      |   21 +---
 fs/xfs/xfs_mount.h       |    3 +
 fs/xfs/xfs_super.c       |  147 ++++++++++++------------
 fs/xfs/xfs_sync.c        |   36 ------
 fs/xfs/xfs_sync.h        |    2 -
 fs/xfs/xfs_trace.h       |    2 +-
 fs/xfs/xfs_trans_inode.c |    8 +-
 19 files changed, 421 insertions(+), 608 deletions(-)


hooks/post-receive
-- 
XFS development tree

<Prev in Thread] Current Thread [Next in Thread>
  • [XFS updates] XFS development tree branch, for-next, updated. v3.2-rc1-11468-g8f639dd, xfs <=