xfs
[Top] [All Lists]

[XFS updates] XFS development tree branch, for-linus, updated. v2.6.33-6

To: xfs@xxxxxxxxxxx
Subject: [XFS updates] XFS development tree branch, for-linus, updated. v2.6.33-6336-ge8c3753
From: xfs@xxxxxxxxxxx
Date: Tue, 16 Mar 2010 18:26:49 -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-linus has been updated
  e8c3753 xfs: don't warn about page discards on shutdown
  8a262e5 xfs: use scalable vmap API
  cd9640a xfs: remove old vmap cache
  66ce3cf Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
  05c5cb3 Merge branch 'for-2.6.34' of git://linux-nfs.org/~bfields/linux
  e213e26 Merge branch 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6
  a9185b4 pass writeback_control to ->write_inode
  26821ed make sure data is on disk before calling ->write_inode
  ac0e773 quota: drop permission checks from xfs_fs_set_xstate/xfs_fs_set_xquota
  8c4e4ac quota: clean up Q_XQUOTASYNC
  4ea41e2 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs into 
for-2.6.34-incoming
  978ebd9 xfs_export_operations.commit_metadata
      from  9b1f56d60acfd634728f91f34922066c6f80ede6 (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 e8c3753ce4cd6a805ebcfdb3aa6d30e6f4b8b3e0
Author: Dave Chinner <dchinner@xxxxxxxxxx>
Date:   Mon Mar 15 02:36:35 2010 +0000

    xfs: don't warn about page discards on shutdown
    
    If we are doing a forced shutdown, we can get lots of noise about
    delalloc pages being discarded. This is happens by design during a
    forced shutdown, so don't spam the logs with these messages.
    
    Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
    Reviewed-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Alex Elder <aelder@xxxxxxx>

commit 8a262e573d30187b32b5534ec489446931239cc5
Author: Alex Elder <aelder@xxxxxxx>
Date:   Tue Mar 16 18:55:56 2010 +0000

    xfs: use scalable vmap API
    
    Re-apply a commit that had been reverted due to regressions
    that have since been fixed.
    
        From 95f8e302c04c0b0c6de35ab399a5551605eeb006 Mon Sep 17 00:00:00 2001
        From: Nick Piggin <npiggin@xxxxxxx>
        Date: Tue, 6 Jan 2009 14:43:09 +1100
    
        Implement XFS's large buffer support with the new vmap APIs. See the 
vmap
        rewrite (db64fe02) for some numbers. The biggest improvement that comes 
from
        using the new APIs is avoiding the global KVA allocation lock on every 
call.
    
        Signed-off-by: Nick Piggin <npiggin@xxxxxxx>
        Reviewed-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
        Signed-off-by: Lachlan McIlroy <lachlan@xxxxxxx>
    
    Only modifications here were a minor reformat, plus making the patch
    apply given the new use of xfs_buf_is_vmapped().
    
    Modified-by: Alex Elder <aelder@xxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Alex Elder <aelder@xxxxxxx>

commit cd9640a70d542ca026a812ac34733799da0a39c9
Author: Alex Elder <aelder@xxxxxxx>
Date:   Tue Mar 16 18:55:54 2010 +0000

    xfs: remove old vmap cache
    
    Re-apply a commit that had been reverted due to regressions
    that have since been fixed.
    
        Original commit: d2859751cd0bf586941ffa7308635a293f943c17
        Author: Nick Piggin <npiggin@xxxxxxx>
        Date: Tue, 6 Jan 2009 14:40:44 +1100
    
        XFS's vmap batching simply defers a number (up to 64) of vunmaps,
        and keeps track of them in a list. To purge the batch, it just goes
        through the list and calls vunamp on each one. This is pretty poor:
        a global TLB flush is generally still performed on each vunmap, with
        the most expensive parts of the operation being the broadcast IPIs
        and locking involved in the SMP callouts, and the locking involved
        in the vmap management -- none of these are avoided by just batching
        up the calls. I'm actually surprised it ever made much difference.
        (Now that the lazy vmap allocator is upstream, this description is
        not quite right, but the vunmap batching still doesn't seem to do
        much).
    
        Rip all this logic out of XFS completely. I will improve vmap
        performance and scalability directly in subsequent patch.
    
        Signed-off-by: Nick Piggin <npiggin@xxxxxxx>
        Reviewed-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
        Signed-off-by: Lachlan McIlroy <lachlan@xxxxxxx>
    
    The only change I made was to use the "new" xfs_buf_is_vmapped()
    function in a place it had been open-coded in the original.
    
    Modified-by: Alex Elder <aelder@xxxxxxx>
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Alex Elder <aelder@xxxxxxx>

commit 66ce3cf84deba6cc71dcf43c9d56a4278e5f712d
Merge: 05c5cb31ec47cacf38db56d9efaa37ca9d473132 
9b1f56d60acfd634728f91f34922066c6f80ede6
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Date:   Sat Mar 6 11:32:21 2010 -0800

    Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
    
    * 'for-linus' of git://oss.sgi.com/xfs/xfs: (21 commits)
      xfs: return inode fork offset in bulkstat for fsr
      xfs: Increase the default size of the reserved blocks pool
      xfs: truncate delalloc extents when IO fails in writeback
      xfs: check for more work before sleeping in xfssyncd
      xfs: Fix a build warning in xfs_aops.c
      xfs: fix locking for inode cache radix tree tag updates
      xfs: remove xfs_ipin/xfs_iunpin
      xfs: cleanup xfs_iunpin_wait/xfs_iunpin_nowait
      xfs: kill xfs_lrw.h
      xfs: factor common xfs_trans_bjoin code
      xfs: stop passing opaque handles to xfs_log.c routines
      xfs: split xfs_bmap_btalloc
      xfs: fix xfs_fsblock_t tracing
      xfs: fix inode pincount check in fsync
      xfs: Non-blocking inode locking in IO completion
      xfs: implement optimized fdatasync
      xfs: remove wrapper for the fsync file operation
      xfs: remove wrappers for read/write file operations
      xfs: merge xfs_lrw.c into xfs_file.c
      xfs: fix dquota trace format
      ...

commit 05c5cb31ec47cacf38db56d9efaa37ca9d473132
Merge: 4582a30c2fdca5d2b40f63a20ea082b93230ff2b 
4ea41e2de5bba756858bb40f964e3490b6d1a25c
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Date:   Sat Mar 6 11:31:38 2010 -0800

    Merge branch 'for-2.6.34' of git://linux-nfs.org/~bfields/linux
    
    * 'for-2.6.34' of git://linux-nfs.org/~bfields/linux: (22 commits)
      nfsd4: fix minor memory leak
      svcrpc: treat uid's as unsigned
      nfsd: ensure sockets are closed on error
      Revert "sunrpc: move the close processing after do recvfrom method"
      Revert "sunrpc: fix peername failed on closed listener"
      sunrpc: remove unnecessary svc_xprt_put
      NFSD: NFSv4 callback client should use RPC_TASK_SOFTCONN
      xfs_export_operations.commit_metadata
      commit_metadata export operation replacing nfsd_sync_dir
      lockd: don't clear sm_monitored on nsm_reboot_lookup
      lockd: release reference to nsm_handle in nlm_host_rebooted
      nfsd: Use vfs_fsync_range() in nfsd_commit
      NFSD: Create PF_INET6 listener in write_ports
      SUNRPC: NFS kernel APIs shouldn't return ENOENT for "transport not found"
      SUNRPC: Bury "#ifdef IPV6" in svc_create_xprt()
      NFSD: Support AF_INET6 in svc_addsock() function
      SUNRPC: Use rpc_pton() in ip_map_parse()
      nfsd: 4.1 has an rfc number
      nfsd41: Create the recovery entry for the NFSv4.1 client
      nfsd: use vfs_fsync for non-directories
      ...

commit e213e26ab3988c516c06eba4dcd030ac052f6dc9
Merge: c812a51d11bbe983f4c24e32b59b265705ddd3c2 
efd8f0e6f6c1faa041f228d7113bd3a9db802d49
Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Date:   Fri Mar 5 13:20:53 2010 -0800

    Merge branch 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6
    
    * 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6: (33 commits)
      quota: stop using QUOTA_OK / NO_QUOTA
      dquot: cleanup dquot initialize routine
      dquot: move dquot initialization responsibility into the filesystem
      dquot: cleanup dquot drop routine
      dquot: move dquot drop responsibility into the filesystem
      dquot: cleanup dquot transfer routine
      dquot: move dquot transfer responsibility into the filesystem
      dquot: cleanup inode allocation / freeing routines
      dquot: cleanup space allocation / freeing routines
      ext3: add writepage sanity checks
      ext3: Truncate allocated blocks if direct IO write fails to update i_size
      quota: Properly invalidate caches even for filesystems with blocksize < 
pagesize
      quota: generalize quota transfer interface
      quota: sb_quota state flags cleanup
      jbd: Delay discarding buffers in journal_unmap_buffer
      ext3: quota_write cross block boundary behaviour
      quota: drop permission checks from xfs_fs_set_xstate/xfs_fs_set_xquota
      quota: split out compat_sys_quotactl support from quota.c
      quota: split out netlink notification support from quota.c
      quota: remove invalid optimization from quota_sync_all
      ...
    
    Fixed trivial conflicts in fs/namei.c and fs/ufs/inode.c

commit a9185b41a4f84971b930c519f0c63bd450c4810d
Author: Christoph Hellwig <hch@xxxxxx>
Date:   Fri Mar 5 09:21:37 2010 +0100

    pass writeback_control to ->write_inode
    
    This gives the filesystem more information about the writeback that
    is happening.  Trond requested this for the NFS unstable write handling,
    and other filesystems might benefit from this too by beeing able to
    distinguish between the different callers in more detail.
    
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

commit 26821ed40b4230259e770c9911180f38fcaa6f59
Author: Christoph Hellwig <hch@xxxxxx>
Date:   Fri Mar 5 09:21:21 2010 +0100

    make sure data is on disk before calling ->write_inode
    
    Similar to the fsync issue fixed a while ago in commit
    2daea67e966dc0c42067ebea015ddac6834cef88 we need to write for data to
    actually hit the disk before writing out the metadata to guarantee
    data integrity for filesystems that modify the inode in the data I/O
    completion path.  Currently XFS and NFS handle this manually, and AFS
    has a write_inode method that does nothing but waiting for data, while
    others are possibly missing out on this.
    
    Fortunately this change has a lot less impact than the fsync change
    as none of the write_inode methods starts data writeout of any form
    by itself.
    
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

commit ac0e773718dc20551e72900d2e7eada96ac91100
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Tue Feb 16 03:44:56 2010 -0500

    quota: drop permission checks from xfs_fs_set_xstate/xfs_fs_set_xquota
    
    We already do these checks in the generic code.
    
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Jan Kara <jack@xxxxxxx>

commit 8c4e4acd660a09e571a71583b5bbe1eee700c9ad
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date:   Tue Feb 16 03:44:51 2010 -0500

    quota: clean up Q_XQUOTASYNC
    
    Currently Q_XQUOTASYNC calls into the quota_sync method, but XFS does 
something
    entirely different in it than the rest of the filesystems.  xfs_quota which
    calls Q_XQUOTASYNC expects an asynchronous data writeout to flush delayed
    allocations, while the "VFS" quota support wants to flush changes to the 
quota
    file.
    
    So make Q_XQUOTASYNC call into the writeback code directly and make the
    quota_sync method optional as XFS doesn't need in the sense expected by the
    rest of the quota code.
    
    GFS2 was using limited XFS-style quota and has a quota_sync method fitting
    neither the style used by vfs_quota_sync nor xfs_fs_quota_sync.  I left it
    in for now as per discussion with Steve it expects to be called from the
    sync path this way.
    
    Signed-off-by: Christoph Hellwig <hch@xxxxxx>
    Signed-off-by: Jan Kara <jack@xxxxxxx>

commit 4ea41e2de5bba756858bb40f964e3490b6d1a25c
Merge: 8d75da8afd068fa58b35e69c7c8c46770d9e7a98 
398007f863a4af2b4a5a07219c5a617f1a098115
Author: J. Bruce Fields <bfields@xxxxxxxxxxxxxx>
Date:   Thu Mar 4 12:03:16 2010 -0500

    Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs into 
for-2.6.34-incoming
    
    Resolve merge conflict in fs/xfs/linux-2.6/xfs_export.c.

commit 978ebd97d1426d5708d3f353179ab81f191a7eeb
Author: Ben Myers <bpm@xxxxxxx>
Date:   Wed Feb 17 14:05:16 2010 -0600

    xfs_export_operations.commit_metadata
    
    This is the commit_metadata export operation for XFS.
    
    - Takes one inode to be committed.
    
    - Forces the log up to the lsn of the inode.
    
    - Doesn't force the log if the inode doesn't have a pincount.
    
    Signed-off-by: Ben Myers <bpm@xxxxxxx>
    Reviewed-by: Christoph Hellwig <hch@xxxxxx>
    Reviewed-by: Dave Chinner <david@xxxxxxxxxxxxx>
    [bfields@xxxxxxxxxxxxxx: trivial whitespace fix]
    Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxxxxxx>

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

Summary of changes:
 fs/xfs/linux-2.6/xfs_aops.c     |   13 +++++-
 fs/xfs/linux-2.6/xfs_buf.c      |   81 ++-------------------------------------
 fs/xfs/linux-2.6/xfs_export.c   |   20 ++++++++++
 fs/xfs/linux-2.6/xfs_quotaops.c |   19 ---------
 fs/xfs/linux-2.6/xfs_super.c    |    8 +---
 5 files changed, 36 insertions(+), 105 deletions(-)


hooks/post-receive
-- 
XFS development tree

<Prev in Thread] Current Thread [Next in Thread>
  • [XFS updates] XFS development tree branch, for-linus, updated. v2.6.33-6336-ge8c3753, xfs <=