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@xxxxxxx> 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@xxxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> commit ecb6928fcf969b302929f109e175981df1dba697 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 86fa8af69d8e90b7b40b8dab84d168527143ae20 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 9130090b5f04f7e7bc29b944e0b1ba494fff3f98 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 0b932cccbdc09a72aa370456a59b40ecd6b10baf Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 8221112b4377a3b69f2016b5cc3c550d51dd3139 Author: Dave Chinner <dchinner@xxxxxxxxxx> Date: Mon Mar 7 10:07:35 2011 +1100 xfs: convert the quota debug prints to new API Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 6d4a8ecb344bddbbb8c71deb4dcea0be6955cfc3 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 5348778699bba92bf28b79863e09e7181d8cf95c Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit af34e09da42801c97f39f768c715f5511d914b52 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 65333b4c3d46909872796321d15f179cb0e32028 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 6a19d9393a5402e69fc52f5da8a828b8499a8265 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit a0fa2b679ecd15b4bdbb46cd2420b6affde91cf9 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 4f10700a2e4bb2ff3d3a80f08412e21109e6d4b5 Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit 10e38391c0e242e53e30094f6c00553418ab2f2e Author: Dave Chinner <dchinner@xxxxxxxxxx> 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@xxxxxxxxxx> Reviewed-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> commit eeb2036b8a148629b762ae6d85cff0be8106f081 Author: Alex Elder <aelder@xxxxxxx> 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@xxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx> Tested-by: Jeffrey Hundstad <jeffrey.hundstad@xxxxxxxx> commit 20ad9ea9becd34a3c16252ca9d815f2c74f8f30f Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> Date: Sun Feb 13 12:06:34 2011 +0000 xfs: enable delaylog by default Signed-off-by: Christoph Hellwig <hch@xxxxxx> Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit ec3ba85f4083d10e32fe58b46db02d78ef71f6b8 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 1050c71e2925ab0cb025e4c89e08b15529a1ee36 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 5d15765594eeb5d82c5630b3428ea0ac4f7d3c31 Author: Lukas Czerner <lczerner@xxxxxxxxxx> 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@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit c4d0c3b097f7584772316ee4d64a09fe0e4ddfca Author: Dan Rosenberg <drosenberg@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxx> Reviewed-by: Eugene Teo <eugeneteo@xxxxxxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 9681153b460006923bb1e9d39b05b80ec09d6b4e Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 0d8b30ad19bf13197cbcd786e2cd5a2ecef72e68 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> commit 04e99455ea5bb17ea7c2e7bb0970168efb736242 Author: Christoph Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxx> Signed-off-by: Alex Elder <aelder@xxxxxxx> ----------------------------------------------------------------------- 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
_______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs