[XFS updates] XFS development tree branch, for-linus, updated. v2.6.37-rc4-9201-g0c9ba97
xfs at oss.sgi.com
xfs at oss.sgi.com
Mon Mar 21 16:07:10 CDT 2011
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
discards af24ee9ea8d532e16883251a6684dfa1be8eec29 (commit)
discards be715140b5c3baf8ab6708060cfab80bef279d18 (commit)
discards 3a3675b7f23f83ca8c67c9c2b6edf707fd28d1ba (commit)
0c9ba97 xfs: don't name variables "panic"
ecb6928 xfs: factor agf counter updates into a helper
86fa8af xfs: clean up the xfs_alloc_compute_aligned calling convention
9130090 xfs: kill support/debug.[ch]
0b932cc xfs: Convert remaining cmn_err() callers to new API
8221112 xfs: convert the quota debug prints to new API
6d4a8ec xfs: rename xfs_cmn_err_fsblock_zero()
5348778 xfs: convert xfs_fs_cmn_err to new error logging API
af34e09 xfs: kill xfs_fs_mount_cmn_err() macro
65333b4 xfs: kill xfs_fs_repair_cmn_err() macro
6a19d93 xfs: convert xfs_cmn_err to xfs_alert_tag
a0fa2b6 xfs: Convert xlog_warn to new logging interface
4f10700 xfs: Convert linux-2.6/ files to new logging interface
10e3839 xfs: introduce new logging API.
eeb2036 xfs: zero proper structure size for geometry calls
20ad9ea xfs: enable delaylog by default
ec3ba85 xfs: more sensible inode refcounting for ialloc
1050c71 xfs: stop using xfs_trans_iget in the RT allocator
5d15765 xfs: check if device support discard in xfs_ioc_trim()
c4d0c3b xfs: prevent leaking uninitialized stack memory in FSGEOMETRY_V1
9681153 xfs: add lockdep annotations for the rt inodes
0d8b30a xfs: fix xfs_get_extsz_hint for a zero extent size hint
04e9945 xfs: only lock the rt bitmap inode once per allocation
from af24ee9ea8d532e16883251a6684dfa1be8eec29 (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 0c9ba97318fc9a905bcc1419b6966de061203a70
Author: Alex Elder <aelder at sgi.com>
Date: Fri Mar 11 12:39:51 2011 +0000
xfs: don't name variables "panic"
The new xfs_alert_tag() used a variable named "panic",
and that is to be avoided. Rename it.
Signed-off-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Dave Chinner <dchinner at redhat.com>
commit ecb6928fcf969b302929f109e175981df1dba697
Author: Christoph Hellwig <hch at infradead.org>
Date: Fri Mar 4 12:59:55 2011 +0000
xfs: factor agf counter updates into a helper
Updating the AGF and transactions counters is duplicated between allocating
and freeing extents. Factor the code into a common helper.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <dchinner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 86fa8af69d8e90b7b40b8dab84d168527143ae20
Author: Christoph Hellwig <hch at infradead.org>
Date: Fri Mar 4 12:59:54 2011 +0000
xfs: clean up the xfs_alloc_compute_aligned calling convention
Pass a xfs_alloc_arg structure to xfs_alloc_compute_aligned and derive
the alignment and minlen paramters from it. This cleans up the existing
callers, and we'll need even more information from the xfs_alloc_arg
in subsequent patches. Based on a patch from Dave Chinner.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <dchinner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 9130090b5f04f7e7bc29b944e0b1ba494fff3f98
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:09:35 2011 +1100
xfs: kill support/debug.[ch]
The remaining functionality in debug.[ch] is effectively just assert
handling, conditional debug definitions and hex dumping. The hex
dumping and assert function can be moved into the new printk module,
while the rest can be moved into top-level header files. This allows
fs/xfs/support/debug.[ch] to be completely removed from the
codebase.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 0b932cccbdc09a72aa370456a59b40ecd6b10baf
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:08:35 2011 +1100
xfs: Convert remaining cmn_err() callers to new API
Once converted, kill the remainder of the cmn_err() interface.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 8221112b4377a3b69f2016b5cc3c550d51dd3139
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:07:35 2011 +1100
xfs: convert the quota debug prints to new API
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 6d4a8ecb344bddbbb8c71deb4dcea0be6955cfc3
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:06:35 2011 +1100
xfs: rename xfs_cmn_err_fsblock_zero()
The "cmn_err" part of the function name is no longer relevant. Rename
the function to xfs_alert_fsblock_zero() to match the new logging
API.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 5348778699bba92bf28b79863e09e7181d8cf95c
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:05:35 2011 +1100
xfs: convert xfs_fs_cmn_err to new error logging API
Continue to clean up the error logging code by converting all the
callers of xfs_fs_cmn_err() to the new API. Once done, remove the
unused old API function.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit af34e09da42801c97f39f768c715f5511d914b52
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:04:35 2011 +1100
xfs: kill xfs_fs_mount_cmn_err() macro
The xfs_fs_mount_cmn_err() hides a simple check as to whether the
mount path should output an error or not. Remove the macro and open
code the check.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 65333b4c3d46909872796321d15f179cb0e32028
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:03:35 2011 +1100
xfs: kill xfs_fs_repair_cmn_err() macro
In certain cases of inode corruption, the xfs_fs_repair_cmn_err()
macro is used to output an extra message in the corruption report.
That extra message is "unmount and run xfs_repair", which really
applies to any corruption report. Each case that this macro is
called (except one) a following call to xfs_corruption_error() is
made to optionally dump more information about the error.
Hence, move the output of "run xfs_repair" to xfs_corruption_error()
so that it is output on all corruption reports. Also, convert the
callers of the repair macro that don't call xfs_corruption_error()
to call it, hence provide consiÑtent error reporting for all cases
where xfs_fs_repair_cmn_err() used to be called.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 6a19d9393a5402e69fc52f5da8a828b8499a8265
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:02:35 2011 +1100
xfs: convert xfs_cmn_err to xfs_alert_tag
Continue the conversion of the old cmn_err interface be converting
all the conditional panic tag errors to xfs_alert_tag() and then
removing xfs_cmn_err().
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit a0fa2b679ecd15b4bdbb46cd2420b6affde91cf9
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:01:35 2011 +1100
xfs: Convert xlog_warn to new logging interface
Convert the xfs log operations to use the new error logging
interfaces. This removes the xlog_{warn,panic} wrappers and makes
almost all errors emit the device they belong to instead of just
refering to "XFS".
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 4f10700a2e4bb2ff3d3a80f08412e21109e6d4b5
Author: Dave Chinner <dchinner at redhat.com>
Date: Mon Mar 7 10:00:35 2011 +1100
xfs: Convert linux-2.6/ files to new logging interface
Convert the files in fs/xfs/linux-2.6/ to use the new xfs_<level>
logging format that replaces the old Irix inherited cmn_err()
interfaces. While there, also convert naked printk calls to use the
relevant xfs logging function to standardise output format.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit 10e38391c0e242e53e30094f6c00553418ab2f2e
Author: Dave Chinner <dchinner at redhat.com>
Date: Wed Mar 2 14:20:59 2011 +1100
xfs: introduce new logging API.
Most of the logging infrastructure in XFS is unneccessary and
designed around the infrastructure supplied by Irix rather than
Linux. To rationalise the logging interfaces, start by introducing
simple printk wrappers similar to the dev_printk() infrastructure.
Later patches will convert code to use this new interface.
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Reviewed-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Christoph Hellwig <hch at lst.de>
commit eeb2036b8a148629b762ae6d85cff0be8106f081
Author: Alex Elder <aelder at sgi.com>
Date: Tue Mar 1 17:50:00 2011 +0000
xfs: zero proper structure size for geometry calls
Commit 493f3358cb289ccf716c5a14fa5bb52ab75943e5 added this call to
xfs_fs_geometry() in order to avoid passing kernel stack data back
to user space:
+ memset(geo, 0, sizeof(*geo));
Unfortunately, one of the callers of that function passes the
address of a smaller data type, cast to fit the type that
xfs_fs_geometry() requires. As a result, this can happen:
Kernel panic - not syncing: stack-protector: Kernel stack is corrupted
in: f87aca93
Pid: 262, comm: xfs_fsr Not tainted 2.6.38-rc6-493f3358cb2+ #1
Call Trace:
[<c12991ac>] ? panic+0x50/0x150
[<c102ed71>] ? __stack_chk_fail+0x10/0x18
[<f87aca93>] ? xfs_ioc_fsgeometry_v1+0x56/0x5d [xfs]
Fix this by fixing that one caller to pass the right type and then
copy out the subset it is interested in.
Note: This patch is an alternative to one originally proposed by
Eric Sandeen.
Reported-by: Jeffrey Hundstad <jeffrey.hundstad at mnsu.edu>
Signed-off-by: Alex Elder <aelder at sgi.com>
Reviewed-by: Eric Sandeen <sandeen at redhat.com>
Tested-by: Jeffrey Hundstad <jeffrey.hundstad at mnsu.edu>
commit 20ad9ea9becd34a3c16252ca9d815f2c74f8f30f
Author: Christoph Hellwig <hch at infradead.org>
Date: Sun Feb 13 12:06:34 2011 +0000
xfs: enable delaylog by default
Signed-off-by: Christoph Hellwig <hch at lst.de>
Signed-off-by: Dave Chinner <dchinner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit ec3ba85f4083d10e32fe58b46db02d78ef71f6b8
Author: Christoph Hellwig <hch at infradead.org>
Date: Sun Feb 13 13:26:42 2011 +0000
xfs: more sensible inode refcounting for ialloc
Currently we return iodes from xfs_ialloc with just a single reference held.
But we need two references, as one is dropped during transaction commit and
the second needs to be transfered to the VFS. Change xfs_ialloc to use
xfs_iget plus xfs_trans_ijoin_ref to grab two references to the inode,
and remove the now superflous IHOLD calls from all callers. This also
greatly simplifies the error handling in xfs_create and also allow to remove
xfs_trans_iget as no other callers are left.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <dchinner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 1050c71e2925ab0cb025e4c89e08b15529a1ee36
Author: Christoph Hellwig <hch at infradead.org>
Date: Sun Feb 13 13:25:31 2011 +0000
xfs: stop using xfs_trans_iget in the RT allocator
During mount we establish references to the RT inodes, which we keep for
the lifetime of the filesystem. Instead of using xfs_trans_iget to grab
additional references when adding RT inodes to transactions use the
combination of xfs_ilock and xfs_trans_ijoin_ref, which archives the same
end result with less overhead.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Reviewed-by: Dave Chinner <dchinner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 5d15765594eeb5d82c5630b3428ea0ac4f7d3c31
Author: Lukas Czerner <lczerner at redhat.com>
Date: Tue Feb 15 17:07:36 2011 +0000
xfs: check if device support discard in xfs_ioc_trim()
Right now we, are relying on the fact that when we attempt to
actually do the discard, blkdev_issue_discar() returns -EOPNOTSUPP
and the user is informed that the device does not support discard.
However, in the case where the we do not hit any suitable free
extent to trim in FITRIM code, it will finish without any error.
This is very confusing, because it seems that FITRIM was successful
even though the device does not actually supports discard.
Solution: Check for the discard support before attempt to search for
free extents.
Signed-off-by: Lukas Czerner <lczerner at redhat.com>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit c4d0c3b097f7584772316ee4d64a09fe0e4ddfca
Author: Dan Rosenberg <drosenberg at vsecurity.com>
Date: Mon Feb 14 13:45:28 2011 +0000
xfs: prevent leaking uninitialized stack memory in FSGEOMETRY_V1
The FSGEOMETRY_V1 ioctl (and its compat equivalent) calls out to
xfs_fs_geometry() with a version number of 3. This code path does not
fill in the logsunit member of the passed xfs_fsop_geom_t, leading to
the leaking of four bytes of uninitialized stack data to potentially
unprivileged callers.
v2 switches to memset() to avoid future issues if structure members
change, on suggestion of Dave Chinner.
Signed-off-by: Dan Rosenberg <drosenberg at vsecurity.com>
Reviewed-by: Eugene Teo <eugeneteo at kernel.org>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 9681153b460006923bb1e9d39b05b80ec09d6b4e
Author: Christoph Hellwig <hch at infradead.org>
Date: Tue Jan 25 09:06:21 2011 +0000
xfs: add lockdep annotations for the rt inodes
The rt bitmap and summary inodes do not participate in the normal inode
locking protocol. Instead the rt bitmap inode can be locked in any
transaction involving rt allocations, and the both of the rt inodes can
be locked at the same time. Add specific lockdep subclasses for the rt
inodes to prevent lockdep from blowing up.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 0d8b30ad19bf13197cbcd786e2cd5a2ecef72e68
Author: Christoph Hellwig <hch at infradead.org>
Date: Tue Jan 25 09:06:20 2011 +0000
xfs: fix xfs_get_extsz_hint for a zero extent size hint
We can easily set the extsize flag without setting an extent size
hint, or one that evaluates to zero. Historically the di_extsize
field was only used when it was non-zero, but the commit
"Cleanup inode extent size hint extraction"
broke this. Restore the old behaviour, thus fixing xfsqa 090 with
a debug kernel.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Signed-off-by: Alex Elder <aelder at sgi.com>
commit 04e99455ea5bb17ea7c2e7bb0970168efb736242
Author: Christoph Hellwig <hch at infradead.org>
Date: Tue Jan 25 09:06:19 2011 +0000
xfs: only lock the rt bitmap inode once per allocation
Currently both xfs_rtpick_extent and xfs_rtallocate_extent call
xfs_trans_iget to grab and lock the rt bitmap inode, which results in a
deadlock since the removal of the lock recursion counters in commit
"xfs: simplify inode to transaction joining"
Fix this by acquiring and locking the inode in xfs_bmap_rtalloc before
calling into xfs_rtpick_extent and xfs_rtallocate_extent.
Signed-off-by: Christoph Hellwig <hch at lst.de>
Signed-off-by: Alex Elder <aelder at sgi.com>
-----------------------------------------------------------------------
Summary of changes:
fs/xfs/Makefile | 5 +-
fs/xfs/linux-2.6/kmem.c | 9 +-
fs/xfs/linux-2.6/xfs_aops.c | 6 +-
fs/xfs/linux-2.6/xfs_buf.c | 17 ++--
fs/xfs/linux-2.6/xfs_linux.h | 23 ++++-
fs/xfs/linux-2.6/xfs_message.c | 133 ++++++++++++++++++++++++
fs/xfs/linux-2.6/xfs_message.h | 38 +++++++
fs/xfs/linux-2.6/xfs_super.c | 128 +++++++++++-------------
fs/xfs/linux-2.6/xfs_sync.c | 5 +-
fs/xfs/linux-2.6/xfs_sysctl.c | 2 +-
fs/xfs/quota/xfs_dquot.c | 48 +++++----
fs/xfs/quota/xfs_dquot_item.c | 5 +-
fs/xfs/quota/xfs_qm.c | 49 ++++------
fs/xfs/quota/xfs_qm_bhv.c | 3 +-
fs/xfs/quota/xfs_qm_syscalls.c | 85 ++++++++--------
fs/xfs/quota/xfs_trans_dquot.c | 5 +-
fs/xfs/support/debug.c | 107 -------------------
fs/xfs/support/debug.h | 61 -----------
fs/xfs/xfs_alloc.c | 160 +++++++++++++++--------------
fs/xfs/xfs_bmap.c | 24 +++--
fs/xfs/xfs_buf_item.c | 15 ++--
fs/xfs/xfs_da_btree.c | 9 +-
fs/xfs/xfs_dfrag.c | 4 +-
fs/xfs/xfs_dir2.c | 2 +-
fs/xfs/xfs_dir2_node.c | 25 ++---
fs/xfs/xfs_error.c | 22 ++--
fs/xfs/xfs_error.h | 19 +---
fs/xfs/xfs_fsops.c | 6 +-
fs/xfs/xfs_ialloc.c | 82 ++++++---------
fs/xfs/xfs_inode.c | 129 +++++++++++-------------
fs/xfs/xfs_inode.h | 23 +++--
fs/xfs/xfs_iomap.c | 12 +-
fs/xfs/xfs_log.c | 124 +++++++++++------------
fs/xfs/xfs_log_priv.h | 4 -
fs/xfs/xfs_log_recover.c | 223 +++++++++++++++++++--------------------
fs/xfs/xfs_mount.c | 148 ++++++++++++++-------------
fs/xfs/xfs_quota.h | 3 +-
fs/xfs/xfs_rtalloc.c | 92 +++++++----------
fs/xfs/xfs_rtalloc.h | 2 +-
fs/xfs/xfs_rw.c | 58 ++++-------
fs/xfs/xfs_trans.h | 2 -
fs/xfs/xfs_trans_ail.c | 2 +-
fs/xfs/xfs_trans_buf.c | 6 +-
fs/xfs/xfs_trans_inode.c | 22 ----
fs/xfs/xfs_vnodeops.c | 74 ++++---------
45 files changed, 948 insertions(+), 1073 deletions(-)
create mode 100644 fs/xfs/linux-2.6/xfs_message.c
create mode 100644 fs/xfs/linux-2.6/xfs_message.h
delete mode 100644 fs/xfs/support/debug.c
delete mode 100644 fs/xfs/support/debug.h
hooks/post-receive
--
XFS development tree
More information about the xfs
mailing list