[GIT PULL] xfs: new code for 5.6

From: Darrick J. Wong
Date: Thu Jan 30 2020 - 11:13:42 EST


Hi Linus,

Please pull this first batch of new changes for 5.6-rc1. In this
release we clean out the last of the old 32-bit timestamp code, fix a
number of bugs and memory corruptions on 32-bit platforms, and a
refactoring of some of the extended attribute code.

I think I'll be back next week with some refactoring of how the XFS
buffer code returns error codes, however I prefer to hold onto that for
another week to let it soak a while longer.

--D

The following changes since commit fd6988496e79a6a4bdb514a4655d2920209eb85d:

Linux 5.5-rc4 (2019-12-29 15:29:16 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git tags/xfs-5.6-merge-6

for you to fetch changes up to b3531f5fc16d4df2b12567bce48cd9f3ab5f9131:

xfs: remove unused variable 'done' (2020-01-23 21:24:50 -0800)

----------------------------------------------------------------
New code for 5.6:
- Get rid of compat_time_t
- Convert time_t to time64_t in quota code
- Remove shadow variables
- Prevent ATTR_ flag misuse in the attrmulti ioctls
- Clean out strlen in the attr code
- Remove some bogus asserts
- Fix various file size limit calculation errors with 32-bit kernels
- Pack xfs_dir2_sf_entry_t to fix build errors on arm oabi
- Fix nowait inode locking calls for directio aio reads.
- Fix memory corruption bugs when invalidating remote xattr value
buffers.
- Streamline remote attr value removal.
- Make the buffer log format size consistent across platforms.
- Strengthen buffer log format size checking.
- Fix messed up return types of xfs_inode_need_cow.
- Fix some unused variable warnings.

----------------------------------------------------------------
Allison Henderson (1):
xfs: Remove all strlen in all xfs_attr_* functions for attr names.

Arnd Bergmann (2):
xfs: rename compat_time_t to old_time32_t
xfs: quota: move to time64_t interfaces

Christoph Hellwig (5):
xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE
xfs: reject invalid flags combinations in XFS_IOC_ATTRMULTI_BY_HANDLE
xfs: also remove cached ACLs when removing the underlying attr
xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag
xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read

Darrick J. Wong (12):
xfs: remove bogus assertion when online repair isn't enabled
xfs: introduce XFS_MAX_FILEOFF
xfs: truncate should remove all blocks, not just to the end of the page cache
xfs: fix s_maxbytes computation on 32-bit kernels
xfs: refactor remote attr value buffer invalidation
xfs: fix memory corruption during remote attr value buffer invalidation
xfs: streamline xfs_attr3_leaf_inactive
xfs: clean up xfs_buf_item_get_format return value
xfs: complain if anyone tries to create a too-large buffer log item
xfs: make struct xfs_buf_log_format have a consistent size
xfs: check log iovec size to make sure it's plausibly a buffer log format
xfs: fix uninitialized variable in xfs_attr3_leaf_inactive

Eric Sandeen (1):
xfs: remove shadow variable in xfs_btree_lshift

Vincenzo Frascino (1):
xfs: Add __packed to xfs_dir2_sf_entry_t definition

YueHaibing (1):
xfs: remove unused variable 'done'

zhengbin (1):
xfs: change return value of xfs_inode_need_cow to int

fs/xfs/libxfs/xfs_attr.c | 14 ++--
fs/xfs/libxfs/xfs_attr.h | 15 ++--
fs/xfs/libxfs/xfs_attr_leaf.c | 4 +-
fs/xfs/libxfs/xfs_attr_leaf.h | 9 ---
fs/xfs/libxfs/xfs_attr_remote.c | 89 +++++++++++++++++-------
fs/xfs/libxfs/xfs_attr_remote.h | 2 +
fs/xfs/libxfs/xfs_btree.c | 2 -
fs/xfs/libxfs/xfs_da_btree.h | 4 +-
fs/xfs/libxfs/xfs_da_format.h | 4 +-
fs/xfs/libxfs/xfs_format.h | 7 ++
fs/xfs/libxfs/xfs_log_format.h | 19 +++--
fs/xfs/scrub/repair.h | 1 -
fs/xfs/xfs_acl.c | 11 +--
fs/xfs/xfs_attr_inactive.c | 149 ++++++++++++----------------------------
fs/xfs/xfs_buf_item.c | 45 ++++++++----
fs/xfs/xfs_buf_item.h | 1 +
fs/xfs/xfs_dquot.c | 6 +-
fs/xfs/xfs_file.c | 7 +-
fs/xfs/xfs_inode.c | 25 ++++---
fs/xfs/xfs_ioctl.c | 20 +++++-
fs/xfs/xfs_ioctl32.c | 9 ++-
fs/xfs/xfs_ioctl32.h | 2 +-
fs/xfs/xfs_iomap.c | 2 +-
fs/xfs/xfs_iops.c | 6 +-
fs/xfs/xfs_log_recover.c | 6 ++
fs/xfs/xfs_ondisk.h | 1 +
fs/xfs/xfs_qm.h | 6 +-
fs/xfs/xfs_quotaops.c | 6 +-
fs/xfs/xfs_reflink.c | 9 +--
fs/xfs/xfs_reflink.h | 2 +-
fs/xfs/xfs_super.c | 48 ++++++-------
fs/xfs/xfs_trans_dquot.c | 8 ++-
fs/xfs/xfs_xattr.c | 14 ++--
33 files changed, 300 insertions(+), 253 deletions(-)