[GIT PULL] XFS updates for 3.12-rc1

From: Ben Myers
Date: Mon Sep 09 2013 - 13:40:27 EST


Hi Linus,

Please pull these XFS updates for 3.12-rc1. Most of this is related to the
libxfs kernel/userspace sync, there is also project quota work, performance
work in the log, recovery, and the CIL. User namespace support has been
added, directory entries now have file type support, there is work to
cleanup log space reservations, a bunch of spelling cleanups, and bug fixes.

Thanks,
Ben

The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092:

Linux 3.11-rc1 (2013-07-14 15:18:27 -0700)

are available in the git repository at:

git://oss.sgi.com/xfs/xfs tags/xfs-for-linus-v3.12-rc1

for you to fetch changes up to 1d03c6fa88af35e55047a1f2ab116f0fdf2f55aa:

xfs: XFS_MOUNT_QUOTA_ALL needed by userspace (2013-09-03 15:00:06 -0500)

----------------------------------------------------------------
xfs: update for v3.12-rc1

For 3.12-rc1 there are a number of bugfixes in addition to work to ease usage
of shared code between libxfs and the kernel, the rest of the work to enable
project and group quotas to be used simultaneously, performance optimisations
in the log and the CIL, directory entry file type support, fixes for log space
reservations, some spelling/grammar cleanups, and the addition of user
namespace support.

- introduce readahead to log recovery
- add directory entry file type support
- fix a number of spelling errors in comments
- introduce new Q_XGETQSTATV quotactl for project quotas
- add USER_NS support
- log space reservation rework
- CIL optimisations
- kernel/userspace libxfs rework

----------------------------------------------------------------
Brian Foster (1):
xfs: check correct status variable for xfs_inobt_get_rec() call

Chandra Seetharaman (5):
xfs: Fix a deadlock in xfs_log_commit_cil() code path
xfs: Initialize all quota inodes to be NULLFSINO
xfs: Start using pquotaino from the superblock.
quota: Add a new quotactl command Q_XGETQSTATV
xfs: Add support for the Q_XGETQSTATV

Dan Carpenter (1):
xfs: check for underflow in xfs_iformat_fork()

Dave Chinner (53):
xfs: di_flushiter considered harmful
xfs: separate out log format definitions
xfs: split out inode log item format definition
xfs: split out buf log item format definitions
xfs: split out EFI/EFD log item format definition
xfs: separate dquot on disk format definitions out of xfs_quota.h
xfs: separate icreate log format definitions from xfs_icreate_item.h
xfs: split out on-disk transaction definitions
xfs: introduce xfs_rtalloc_defs.h
xfs: introduce xfs_quota_defs.h
xfs: sync minor header differences needed by userspace.
xfs: split out transaction reservation code
xfs: move inode fork definitions to a new header file
xfs: move unrelated definitions out of xfs_inode.h
xfs: introduce xfs_inode_buf.c for inode buffer operations
xfs: move getdents code into it's own file
xfs: reshuffle dir2 definitions around for userspace
xfs: split out attribute listing code into separate file
xfs: split out attribute fork truncation code into separate file
xfs: split out the remote symlink handling
xfs: introduce xfs_sb.c for sharing with libxfs
xfs: create xfs_bmap_util.[ch]
xfs: minor cleanups
xfs: fix issues that cause userspace warnings
xfs: kill xfs_vnodeops.[ch]
xfs: consolidate xfs_rename.c
xfs: consolidate xfs_utils.c
xfs: consolidate extent swap code
xfs: don't special case shared superblock mounts
xfs: kill __KERNEL__ check for debug code in allocation code
xfs: remove __KERNEL__ from debug code
xfs: remove __KERNEL__ check from xfs_dir2_leaf.c
xfs: xfs_filestreams.h doesn't need __KERNEL__
xfs: move kernel specific type definitions to xfs.h
xfs: make struct xfs_perag kernel only
xfs: return log item size in IOP_SIZE
xfs: Reduce allocations during CIL insertion
xfs: avoid CIL allocation during insert
xfs: Combine CIL insert and prepare passes
xfs: split the CIL lock
xfs: use reference counts to free clean buffer items
xfs: Add read-only support for dirent filetype field
xfs: Add write support for dirent filetype field
xfs: don't account buffer cancellation during log recovery readahead
xfs: fix bad dquot buffer size in log recovery readahead
XFS: Assertion failed: first <= last && last < BBTOB(bp->b_length), file: fs/xfs/xfs_trans_buf.c, line: 568
xfs: btree block LSN escaping to disk uninitialised
xfs: check LSN ordering for v5 superblocks during recovery
xfs: inode buffers may not be valid during recovery readahead
xfs: inode log reservations are too small
xfs: finish removing IOP_* macros.
xfs: dtype changed xfs_dir2_sfe_put_ino to xfs_dir3_sfe_put_ino
xfs: XFS_MOUNT_QUOTA_ALL needed by userspace

Dwight Engen (8):
xfs: create wrappers for converting kuid_t to/from uid_t
xfs: convert kuid_t to/from uid_t in ACLs
xfs: ioctl check for capabilities in the current user namespace
xfs: convert kuid_t to/from uid_t for internal structures
xfs: create internal eofblocks structure with kuid_t types
xfs: add capability check to free eofblocks ioctl
enable building user namespace with xfs
powerpc/spufs: convert userns uid/gid mount options to kuid/kgid

Eric Sandeen (4):
xfs: avoid double-free in xfs_attr_node_addname
xfs: free bp in xlog_find_zeroed() error path
xfs:free bp in xlog_find_tail() error path
Fix wrong flag ASSERT in xfs_attr_shortform_getvalue

Fengguang Wu (1):
xfs: xfs_dir3_sfe_put_ino can be static

Jie Liu (11):
xfs: fix assertion failure in xfs_vm_write_failed()
xfs: Introduce a new structure to hold transaction reservation items
xfs: Introduce tr_fsyncts to m_reservation
xfs: Make writeid transaction use tr_writeid
xfs: refactor xfs_trans_reserve() interface
xfs: Get rid of all XFS_XXX_LOG_RES() macro
xfs: Refactor xfs_ticket_alloc() to extract a new helper
xfs: Add xfs_log_rlimit.c
xfs: Validate log space at mount time
xfs: call roundup_64() to calculate the min_logblks
xfs: Simplify xfs_ail_min() with list_first_entry_or_null()

Mark Tinguely (1):
xfs: add xfs sb v4 support for dirent filetype field

Richard Weinberger (1):
xfs: Register hotcpu notifier after initialization

Tejun Heo (1):
xfs: WQ_NON_REENTRANT is meaningless and going away

Zhi Yong Wu (25):
xfs: fix the comment of xfs_check_sizes()
xfs: fix the comment of xfs_buf_free()
xfs: fix the comment of xfs_btree_lookup()
xfs: fix the comment of xfs_mod_incore_sb_unlocked()
xfs: fix the comment of xlog_write_setup_copy()
xfs: remove one blank line in xfs_btree_make_block_unfull()
xfs: fix the comment of xfs_iroot_realloc()
xfs: fix the comment of xfs_btree_get_iroot()
xfs: remove two unused macro definitions in xfs_linux.h
xfs: fix the comment of xlog_recover_buffer_pass2()
xfs: fix the comment of xlog_find_head()
xfs: rename bio_add_buffer() to xfs_bio_add_buffer()
xfs: fix the comment of xfs_bmap_count_tree()
xfs: fix the comment of xfs_bmap_validate_ret()
xfs: fix the comment of xfs_bmap_last_before()
xfs: fix the comment of xfs_bmap_punch_delalloc_range()
xfs: fix the comment of xfs_setsize_buftarg_early()
xfs: fix the comment of xfs_extent_busy_update_extent()
xfs: fix the comment of xfs_ialloc_ag_select()
xfs: fix the comment of xfs_ifree_cluster()
xfs: fix the comment of xfs_log_unmount_write()
xfs: fix the comment of xlog_recover_do_dquot_buffer()
xfs: fix the comment of xfs_sb_quiet_read_verify()
xfs: fix the comment of xfs_mountfs()
xfs: introduce object readahead to log recovery

arch/powerpc/platforms/cell/spufs/inode.c | 8 +-
fs/quota/quota.c | 29 +
fs/xfs/Makefile | 20 +-
fs/xfs/xfs_acl.c | 24 +-
fs/xfs/xfs_ag.h | 53 -
fs/xfs/xfs_alloc.c | 6 +-
fs/xfs/xfs_aops.c | 23 +-
fs/xfs/xfs_attr.c | 427 +---
fs/xfs/xfs_attr.h | 9 +
fs/xfs/xfs_attr_inactive.c | 453 ++++
fs/xfs/xfs_attr_leaf.c | 657 +----
fs/xfs/xfs_attr_leaf.h | 2 +
fs/xfs/xfs_attr_list.c | 655 +++++
fs/xfs/xfs_attr_remote.c | 18 +-
fs/xfs/xfs_bmap.c | 823 +------
fs/xfs/xfs_bmap.h | 56 +-
fs/xfs/xfs_bmap_btree.c | 6 +-
fs/xfs/xfs_bmap_util.c | 2026 +++++++++++++++
fs/xfs/xfs_bmap_util.h | 110 +
fs/xfs/xfs_btree.c | 7 +-
fs/xfs/xfs_btree.h | 2 -
fs/xfs/xfs_buf.c | 5 +-
fs/xfs/xfs_buf_item.c | 58 +-
fs/xfs/xfs_buf_item.h | 100 +-
fs/xfs/xfs_da_btree.c | 8 +-
fs/xfs/xfs_da_btree.h | 12 +-
fs/xfs/xfs_dfrag.c | 459 ----
fs/xfs/xfs_dfrag.h | 53 -
fs/xfs/xfs_dinode.h | 3 +
fs/xfs/xfs_dir2.c | 58 +-
fs/xfs/xfs_dir2.h | 46 +
fs/xfs/xfs_dir2_block.c | 122 +-
fs/xfs/xfs_dir2_data.c | 25 +-
fs/xfs/xfs_dir2_format.h | 186 +-
fs/xfs/xfs_dir2_leaf.c | 404 +--
fs/xfs/xfs_dir2_node.c | 14 +-
fs/xfs/xfs_dir2_priv.h | 49 +-
fs/xfs/xfs_dir2_readdir.c | 695 ++++++
fs/xfs/xfs_dir2_sf.c | 240 +-
fs/xfs/xfs_discard.c | 5 +-
fs/xfs/xfs_dquot.c | 8 +-
fs/xfs/xfs_dquot_item.c | 23 +-
fs/xfs/xfs_error.c | 1 -
fs/xfs/xfs_export.c | 5 +-
fs/xfs/xfs_extent_busy.c | 2 +-
fs/xfs/xfs_extfree_item.c | 50 +-
fs/xfs/xfs_extfree_item.h | 88 +-
fs/xfs/xfs_file.c | 3 +-
fs/xfs/xfs_filestream.c | 8 +-
fs/xfs/xfs_filestream.h | 4 -
fs/xfs/xfs_format.h | 169 ++
fs/xfs/xfs_fs.h | 38 +-
fs/xfs/xfs_fsops.c | 8 +-
fs/xfs/xfs_ialloc.c | 7 +-
fs/xfs/xfs_icache.c | 15 +-
fs/xfs/xfs_icache.h | 50 +
fs/xfs/xfs_icreate_item.c | 21 +-
fs/xfs/xfs_icreate_item.h | 18 -
fs/xfs/xfs_inode.c | 3840 ++++++++++++-----------------
fs/xfs/xfs_inode.h | 312 +--
fs/xfs/xfs_inode_buf.c | 483 ++++
fs/xfs/xfs_inode_buf.h | 53 +
fs/xfs/xfs_inode_fork.c | 1920 +++++++++++++++
fs/xfs/xfs_inode_fork.h | 171 ++
fs/xfs/xfs_inode_item.c | 53 +-
fs/xfs/xfs_inode_item.h | 115 +-
fs/xfs/xfs_ioctl.c | 148 +-
fs/xfs/xfs_ioctl.h | 10 +
fs/xfs/xfs_ioctl32.c | 4 +-
fs/xfs/xfs_iomap.c | 21 +-
fs/xfs/xfs_iops.c | 78 +-
fs/xfs/xfs_iops.h | 13 +
fs/xfs/xfs_linux.h | 60 +-
fs/xfs/xfs_log.c | 113 +-
fs/xfs/xfs_log.h | 90 +-
fs/xfs/xfs_log_cil.c | 371 +--
fs/xfs/xfs_log_format.h | 852 +++++++
fs/xfs/xfs_log_priv.h | 155 +-
fs/xfs/xfs_log_recover.c | 420 +++-
fs/xfs/xfs_log_rlimit.c | 147 ++
fs/xfs/xfs_mount.c | 755 +-----
fs/xfs/xfs_mount.h | 113 +-
fs/xfs/xfs_qm.c | 95 +-
fs/xfs/xfs_qm.h | 2 +
fs/xfs/xfs_qm_bhv.c | 1 +
fs/xfs/xfs_qm_syscalls.c | 126 +-
fs/xfs/xfs_quota.h | 278 +--
fs/xfs/xfs_quota_defs.h | 157 ++
fs/xfs/xfs_quotaops.c | 17 +-
fs/xfs/xfs_rename.c | 346 ---
fs/xfs/xfs_rtalloc.c | 28 +-
fs/xfs/xfs_rtalloc.h | 53 +-
fs/xfs/xfs_sb.c | 834 +++++++
fs/xfs/xfs_sb.h | 72 +-
fs/xfs/xfs_super.c | 31 +-
fs/xfs/xfs_symlink.c | 196 +-
fs/xfs/xfs_symlink.h | 41 +-
fs/xfs/xfs_symlink_remote.c | 200 ++
fs/xfs/xfs_trace.c | 1 +
fs/xfs/xfs_trans.c | 732 +-----
fs/xfs/xfs_trans.h | 301 +--
fs/xfs/xfs_trans_ail.c | 18 +-
fs/xfs/xfs_trans_buf.c | 2 +-
fs/xfs/xfs_trans_dquot.c | 1 +
fs/xfs/xfs_trans_priv.h | 15 +
fs/xfs/xfs_trans_resv.c | 803 ++++++
fs/xfs/xfs_trans_resv.h | 116 +
fs/xfs/xfs_types.h | 60 +-
fs/xfs/xfs_utils.c | 314 ---
fs/xfs/xfs_utils.h | 27 -
fs/xfs/xfs_vnodeops.c | 1870 --------------
fs/xfs/xfs_vnodeops.h | 55 -
fs/xfs/xfs_xattr.c | 2 +-
include/linux/quota.h | 1 +
include/uapi/linux/dqblk_xfs.h | 47 +
init/Kconfig | 13 -
kernel/capability.c | 1 +
117 files changed, 13677 insertions(+), 11950 deletions(-)
create mode 100644 fs/xfs/xfs_attr_inactive.c
create mode 100644 fs/xfs/xfs_attr_list.c
create mode 100644 fs/xfs/xfs_bmap_util.c
create mode 100644 fs/xfs/xfs_bmap_util.h
delete mode 100644 fs/xfs/xfs_dfrag.c
delete mode 100644 fs/xfs/xfs_dfrag.h
create mode 100644 fs/xfs/xfs_dir2_readdir.c
create mode 100644 fs/xfs/xfs_format.h
create mode 100644 fs/xfs/xfs_inode_buf.c
create mode 100644 fs/xfs/xfs_inode_buf.h
create mode 100644 fs/xfs/xfs_inode_fork.c
create mode 100644 fs/xfs/xfs_inode_fork.h
create mode 100644 fs/xfs/xfs_log_format.h
create mode 100644 fs/xfs/xfs_log_rlimit.c
create mode 100644 fs/xfs/xfs_quota_defs.h
delete mode 100644 fs/xfs/xfs_rename.c
create mode 100644 fs/xfs/xfs_sb.c
create mode 100644 fs/xfs/xfs_symlink_remote.c
create mode 100644 fs/xfs/xfs_trans_resv.c
create mode 100644 fs/xfs/xfs_trans_resv.h
delete mode 100644 fs/xfs/xfs_utils.c
delete mode 100644 fs/xfs/xfs_utils.h
delete mode 100644 fs/xfs/xfs_vnodeops.c
delete mode 100644 fs/xfs/xfs_vnodeops.h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/