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
35fd035 Merge branch 'master' of git://git.kernel.org/pub/scm/fs/xfs/xfs
ef14f0c xfs: use generic Posix ACL code
8b5403a xfs: remove SYNC_BDFLUSH
b0710cc xfs: remove SYNC_IOWAIT
075fe10 xfs: split xfs_sync_inodes
fe588ed xfs: use generic inode iterator in xfs_qm_dqrele_all_inodes
75f3cb1 xfs: introduce a per-ag inode iterator
abc1064 xfs: remove unused parameter from xfs_reclaim_inodes
1da8eec xfs: factor out inode validation for sync
845b6d0 xfs: split inode flushing from xfs_sync_inodes_ag
5a34d5c xfs: split inode data writeback from xfs_sync_inodes_ag
7d09525 xfs: kill xfs_qmops
0c5e1ce xfs: validate quota log items during log recovery
e169683 xfs: update max log size
4157fd8 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
1b17d76 xfs: prevent deadlock in xfs_qm_shake()
e6da7c9 xfs: fix overflow in xfs_growfs_data_private
1f23920 xfs: fix double unlock in xfs_swap_extents()
b4348f3 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
28e2117 xfs: fix getbmap vs mmap deadlock
5f79ed6 xfs: a couple getbmap cleanups
b9ec906 xfs: add more checks to superblock validation
def6b3b xfs_file_last_byte() needs to acquire ilock
0e639bd xfs: use memdup_user()
3c1795c Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
dc2a553 Merge branch 'master' into for-linus
ac7c1a7 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
8fe74cf Merge branch 'for-linus' of
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
f36345f Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus
c2ec175 mm: page_mkwrite change prototype to match fault
ce3b0f8 New helper - current_umask()
from 4156e735d3abde8e9243b5d22f7999dd3fffab2e (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 35fd035968de4f674b9d62ee7b1d80ab7a50c384
Merge: 4e73e0eb633f8a1b5cbf20e7f42c6dbfec1d1ca7
ef14f0c1578dce4b688726eb2603e50b62d6665a
Author: Felix Blyakher <felixb@xxxxxxx>
Date: Thu Jun 11 16:56:49 2009 -0500
Merge branch 'master' of git://git.kernel.org/pub/scm/fs/xfs/xfs
commit ef14f0c1578dce4b688726eb2603e50b62d6665a
Author: Christoph Hellwig <hch@xxxxxx>
Date: Wed Jun 10 17:07:47 2009 +0200
xfs: use generic Posix ACL code
This patch rips out the XFS ACL handling code and uses the generic
fs/posix_acl.c code instead. The ondisk format is of course left
unchanged.
This also introduces the same ACL caching all other Linux filesystems do
by adding pointers to the acl and default acl in struct xfs_inode.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 8b5403a6d772d340541cfb30a668fde119c40ac1
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:37:16 2009 +0200
xfs: remove SYNC_BDFLUSH
SYNC_BDFLUSH is a leftover from IRIX and rather misnamed for todays
code. Make xfs_sync_fsdata and xfs_dq_sync use the SYNC_TRYLOCK flag
for not blocking on logs just as the inode sync code already does.
For xfs_sync_fsdata it's a trivial 1:1 replacement, but for xfs_qm_sync
I use the opportunity to decouple the non-blocking lock case from the
different flushing modes, similar to the inode sync code.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit b0710ccc6d9fa8fb908b5f6d1b0782a09d80e24f
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:37:11 2009 +0200
xfs: remove SYNC_IOWAIT
We want to wait for all I/O to finish when we do data integrity syncs. So
there is no reason to keep SYNC_WAIT separate from SYNC_IOWAIT. This
causes a little change in behaviour for the ENOSPC flushing code which now
does a second submission and wait of buffered I/O, but that should finish
ASAP as we already did an asynchronous writeout earlier.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Josef 'Jeff' Sipek <jeffpc@xxxxxxxxxxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 075fe1028699f6a280545dfc2cfc5ac82d555c8c
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:35:48 2009 +0200
xfs: split xfs_sync_inodes
xfs_sync_inodes is used to write back either file data or inode metadata.
In general we always do these separately, except for one fishy case in
xfs_fs_put_super that does both. So separate xfs_sync_inodes into
separate xfs_sync_data and xfs_sync_attr functions. In xfs_fs_put_super
we first call the data sync and then the attr sync as that was the previous
order. The moved log force in that path doesn't make a difference because
we will force the log again as part of the real unmount process.
The filesystem readonly checks are not performed by the new function but
instead moved into the callers, given that most callers alredy have it
further up in the stack. Also add debug checks that we do not pass in
incorrect flags in the new xfs_sync_data and xfs_sync_attr function and
fix the one place that did pass in a wrong flag.
Also remove a comment mentioning xfs_sync_inodes that has been incorrect
for a while because we always take either the iolock or ilock in the
sync path these days.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit fe588ed32867b42e0d906db558ca92fd9f8b128e
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:35:27 2009 +0200
xfs: use generic inode iterator in xfs_qm_dqrele_all_inodes
Use xfs_inode_ag_iterator instead of opencoding the inode walk in the
quota code. Mark xfs_inode_ag_iterator and xfs_sync_inode_valid non-static
to allow using them from the quota code.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Josef 'Jeff' Sipek <jeffpc@xxxxxxxxxxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 75f3cb1393133682958db6f157e1b6473e5a366b
Author: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon Jun 8 15:35:14 2009 +0200
xfs: introduce a per-ag inode iterator
Given that we walk across the per-ag inode lists so often, it makes sense to
introduce an iterator for this.
Convert the sync and reclaim code to use this new iterator, quota code will
follow in the next patch.
Also change xfs_reclaim_inode to return -EGAIN instead of 1 for an inode
already under reclaim. This simplifies the AG iterator and doesn't
matter for the only other caller.
[hch: merged the lookup and execute callbacks back into one to get the
pag_ici_lock locking correct and simplify the code flow]
Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit abc1064742604e60a47a65fa3214dc1a84db093d
Author: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon Jun 8 15:35:12 2009 +0200
xfs: remove unused parameter from xfs_reclaim_inodes
The noblock parameter of xfs_reclaim_inodes is only ever set to zero. Remove
it and all the conditional code that is never executed.
Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 1da8eecab5f866b4f5be43adbaadf18e259a8cc5
Author: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon Jun 8 15:35:07 2009 +0200
xfs: factor out inode validation for sync
Separate the validation of inodes found by the radix
tree walk from the radix tree lookup.
Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 845b6d0cbbc2304e8a54ed4038272c55f85b2269
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:35:05 2009 +0200
xfs: split inode flushing from xfs_sync_inodes_ag
In many cases we only want to sync inode metadata. Split out the inode
flushing into a separate helper to prepare factoring the inode sync code.
Based on a patch from Dave Chinner, but redone to keep the current behaviour
exactly and leave changes to the flushing logic to another patch.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 5a34d5cd096310133f9208db294021208a96660d
Author: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon Jun 8 15:35:03 2009 +0200
xfs: split inode data writeback from xfs_sync_inodes_ag
In many cases we only want to sync inode data. Start spliting the inode sync
into data sync and inode sync by factoring out the inode data flush.
[hch: minor cleanups]
Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 7d095257e321214e4cf359abd131ba1f09c60cba
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:33:32 2009 +0200
xfs: kill xfs_qmops
Kill the quota ops function vector and replace it with direct calls or
stubs in the CONFIG_XFS_QUOTA=n case.
Make sure we check XFS_IS_QUOTA_RUNNING in the right spots. We can remove
the number of those checks because the XFS_TRANS_DQ_DIRTY flag can't be set
otherwise.
This brings us back closer to the way this code worked in IRIX and earlier
Linux versions, but we keep a lot of the more useful factoring of common
code.
Eventually we should also kill xfs_qm_bhv.c, but that's left for a later
patch.
Reduces the size of the source code by about 250 lines and the size of
XFS module by about 1.5 kilobytes with quotas enabled:
text data bss dec hex filename
615957 2960 3848 622765 980ad fs/xfs/xfs.o
617231 3152 3848 624231 98667 fs/xfs/xfs.o.old
Fallout:
- xfs_qm_dqattach is split into xfs_qm_dqattach_locked which expects
the inode locked and xfs_qm_dqattach which does the locking around it,
thus removing XFS_QMOPT_ILOCKED.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit 0c5e1ce89f1eacc366ec421c0f5f681159479c28
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:33:21 2009 +0200
xfs: validate quota log items during log recovery
Arkadiusz has seen really strange crashes in xfs_qm_dqcheck that
I can only explain by a log item being too smal to actually fit the
xfs_dqblk_t we're dereferencing all over xfs_qm_dqcheck. So add
graceful checks for NULL or too small quota items to the log recovery
code.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
commit e1696834e8a15d7ef9ae8ffdffe00bac1399a2e3
Author: Christoph Hellwig <hch@xxxxxx>
Date: Mon Jun 8 15:32:59 2009 +0200
xfs: update max log size
Commit a6634fba3dec4a92f0a2c4e30c80b634c0576ad5 in xfsprogs increased the
maximum log size supported by mkfs. Merged back the changes to xfs_fs.h
so the growfs enforced the same limit and the headers are in sync.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxxx>
-----------------------------------------------------------------------
Summary of changes:
fs/xfs/Kconfig | 1 +
fs/xfs/Makefile | 5 +-
fs/xfs/linux-2.6/xfs_acl.c | 523 +++++++++++++++++++++++
fs/xfs/linux-2.6/xfs_file.c | 4 +-
fs/xfs/linux-2.6/xfs_ioctl.c | 48 +--
fs/xfs/linux-2.6/xfs_ioctl32.c | 12 +-
fs/xfs/linux-2.6/xfs_iops.c | 55 +--
fs/xfs/linux-2.6/xfs_lrw.c | 1 -
fs/xfs/linux-2.6/xfs_quotaops.c | 4 +-
fs/xfs/linux-2.6/xfs_super.c | 49 ++-
fs/xfs/linux-2.6/xfs_sync.c | 479 +++++++++++----------
fs/xfs/linux-2.6/xfs_sync.h | 19 +-
fs/xfs/linux-2.6/xfs_xattr.c | 67 +---
fs/xfs/quota/xfs_dquot.c | 5 +-
fs/xfs/quota/xfs_dquot.h | 1 -
fs/xfs/quota/xfs_dquot_item.c | 1 -
fs/xfs/quota/xfs_qm.c | 168 ++++----
fs/xfs/quota/xfs_qm.h | 21 -
fs/xfs/quota/xfs_qm_bhv.c | 77 +----
fs/xfs/quota/xfs_qm_stats.c | 1 -
fs/xfs/quota/xfs_qm_syscalls.c | 113 ++----
fs/xfs/quota/xfs_trans_dquot.c | 66 ++--
fs/xfs/xfs_acl.c | 874 ---------------------------------------
fs/xfs/xfs_acl.h | 97 ++---
fs/xfs/xfs_ag.h | 2 +
fs/xfs/xfs_arch.h | 32 --
fs/xfs/xfs_attr.c | 13 +-
fs/xfs/xfs_bmap.c | 33 +-
fs/xfs/xfs_bmap_btree.c | 4 +-
fs/xfs/xfs_filestream.c | 6 +-
fs/xfs/xfs_fs.h | 11 +-
fs/xfs/xfs_iget.c | 8 +-
fs/xfs/xfs_inode.c | 1 -
fs/xfs/xfs_inode.h | 6 +
fs/xfs/xfs_iomap.c | 13 +-
fs/xfs/xfs_log_recover.c | 38 ++-
fs/xfs/xfs_mount.c | 105 ++++-
fs/xfs/xfs_mount.h | 84 +----
fs/xfs/xfs_qmops.c | 152 -------
fs/xfs/xfs_quota.h | 122 +++---
fs/xfs/xfs_rename.c | 3 +-
fs/xfs/xfs_rw.c | 1 -
fs/xfs/xfs_trans.c | 15 +-
fs/xfs/xfs_utils.c | 2 +-
fs/xfs/xfs_vnodeops.c | 114 +++---
fs/xfs/xfs_vnodeops.h | 1 +
46 files changed, 1347 insertions(+), 2110 deletions(-)
create mode 100644 fs/xfs/linux-2.6/xfs_acl.c
delete mode 100644 fs/xfs/xfs_acl.c
delete mode 100644 fs/xfs/xfs_qmops.c
hooks/post-receive
--
XFS development tree
|