[GIT PULL] xfs: changes for 4.14

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

Here are the changes for xfs for 4.14.  Most of these are cleanups and
fixes for bad behavior, as we're mostly focusing on improving reliablity
this cycle (read: there's potentially a lot of stuff on the horizon for
4.15 so better to spend a few weeks killing other bugs now.)

Anyway, I tried a test merge+build against master this morning and it
worked fine for me, so please let me know if you encounter any problems.

--D

The following changes since commit 6470812e22261d2342ef1597be62e63a0423d691:

  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc (2017-08-21 14:07:48 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git tags/xfs-4.14-merge-7

for you to fetch changes up to 6c370590cfe0c36bcd62d548148aa65c984540b7:

  xfs: use kmem_free to free return value of kmem_zalloc (2017-09-03 10:40:46 -0700)

----------------------------------------------------------------
Updates for 4.14:
- Write unmount record for a ro mount to avoid unnecessary log replay
- Clean up orphaned inodes when mounting fs readonly
- Resubmit inode log items when buffer writeback fails to avoid umount hang
- Fix log recovery corruption problems when log headers wrap around the end
- Avoid infinite loop searching for free inodes when inode counters are wrong
- Evict inodes involved with log redo so that we don't leak them later
- Fix a potential race between reclaim and inode cluster freeing
- Refactor the inode joining code w.r.t. transaction rolling & deferred ops
- Fix a bug where the log doesn't properly deal with dirty buffers that
  are about to become ordered buffers
- Fix the extent swap code to deal with making dirty buffers ordered properly
- Consolidate page fault handlers
- Refactor the incore extent manipulation functions to use the iext
  abstractions instead of directly modifying with extent data
- Disable crashy chattr +/-x until we fix it
- Don't allow us to set S_DAX for v2 inodes
- Various cleanups
- Clarify some documentation
- Fix a problem where fsync and a log commit race to send the disk a
  flush command, resulting in a small window where power fail data loss
  could occur
- Simplify some rmap operations in the fcollapse code
- Fix some use-after-free problems in async writeback

----------------------------------------------------------------
Amir Goldstein (1):
      xfs: fix incorrect log_flushed on fsync

Brian Foster (15):
      xfs: fix recovery failure when log record header wraps log end
      xfs: always verify the log tail during recovery
      xfs: fix log recovery corruption error due to tail overwrite
      xfs: add log item pinning error injection tag
      xfs: handle -EFSCORRUPTED during head/tail verification
      xfs: add log recovery tracepoint for head/tail
      xfs: open-code xfs_buf_item_dirty()
      xfs: remove unnecessary dirty bli format check for ordered bufs
      xfs: ordered buffer log items are never formatted
      xfs: refactor buffer logging into buffer dirtying helper
      xfs: don't log dirty ranges for ordered buffers
      xfs: skip bmbt block ino validation during owner change
      xfs: move bmbt owner change to last step of extent swap
      xfs: disallow marking previously dirty buffers as ordered
      xfs: relog dirty buffers during swapext bmbt owner change

Carlos Maiolino (3):
      xfs: Add infrastructure needed for error propagation during buffer IO failure
      xfs: Properly retry failed inode items in case of error during buffer writeback
      xfs: stop searching for free slots in an inode chunk when there are none

Christoph Hellwig (16):
      xfs: refactor xfs_trans_roll
      xfs: rename xfs_defer_join to xfs_defer_ijoin
      xfs: remove the ip argument to xfs_defer_finish
      iomap: return VM_FAULT_* codes from iomap_page_mkwrite
      xfs: consolidate the various page fault handlers
      xfs: add a xfs_iext_update_extent helper
      xfs: switch xfs_bmap_local_to_extents to use xfs_iext_insert
      xfs: use xfs_iext_get_extent in xfs_bmap_first_unused
      xfs: move some code around inside xfs_bmap_shift_extents
      xfs: use xfs_iext_*_extent helpers in xfs_bmap_shift_extents
      xfs: use xfs_iext_*_extent helpers in xfs_bmap_split_extent_at
      xfs: rewrite xfs_bmap_count_leaves using xfs_iext_get_extent
      xfs: replace xfs_qm_get_rtblks with a direct call to xfs_bmap_count_leaves
      xfs: disable per-inode DAX flag
      xfs: don't set v3 xflags for v2 inodes
      xfs: open code end_buffer_async_write in xfs_finish_page_writeback

Darrick J. Wong (4):
      xfs: evict all inodes involved with log redo item
      xfs: simplify the rmap code in xfs_bmse_merge
      fsmap: fix documentation of FMR_OF_LAST
      xfs: fix compiler warnings

Eric Sandeen (3):
      xfs: write unmount record for ro mounts
      xfs: toggle readonly state around xfs_log_mount_finish
      xfs: remove unused flags arg from xfs_file_iomap_begin_delay

Omar Sandoval (1):
      xfs: check for race with xfs_reclaim_inode() in xfs_ifree_cluster()

Pan Bian (1):
      xfs: use kmem_free to free return value of kmem_zalloc

 fs/inode.c                      |   1 +
 fs/internal.h                   |   1 -
 fs/iomap.c                      |   4 +-
 fs/xfs/libxfs/xfs_attr.c        | 156 +++++++++++-----------
 fs/xfs/libxfs/xfs_attr_leaf.c   |   6 +-
 fs/xfs/libxfs/xfs_attr_remote.c |  39 +++---
 fs/xfs/libxfs/xfs_bmap.c        | 280 +++++++++++++++++++---------------------
 fs/xfs/libxfs/xfs_bmap_btree.c  |   1 +
 fs/xfs/libxfs/xfs_btree.c       |  27 ++--
 fs/xfs/libxfs/xfs_btree.h       |   3 +-
 fs/xfs/libxfs/xfs_defer.c       |  29 ++---
 fs/xfs/libxfs/xfs_defer.h       |   5 +-
 fs/xfs/libxfs/xfs_ialloc.c      |  57 ++++----
 fs/xfs/libxfs/xfs_inode_fork.c  |  21 ++-
 fs/xfs/libxfs/xfs_inode_fork.h  |   2 +
 fs/xfs/libxfs/xfs_refcount.c    |   2 +-
 fs/xfs/xfs_aops.c               |  71 ++++++----
 fs/xfs/xfs_attr_inactive.c      |   6 +-
 fs/xfs/xfs_bmap_item.c          |   2 +-
 fs/xfs/xfs_bmap_util.c          | 124 ++++++++++++------
 fs/xfs/xfs_bmap_util.h          |   1 +
 fs/xfs/xfs_buf_item.c           | 137 +++++++++++++-------
 fs/xfs/xfs_buf_item.h           |   5 +-
 fs/xfs/xfs_dquot.c              |   2 +-
 fs/xfs/xfs_error.c              |   3 +
 fs/xfs/xfs_error.h              |   4 +-
 fs/xfs/xfs_file.c               |  97 +++++---------
 fs/xfs/xfs_icache.c             |  10 +-
 fs/xfs/xfs_inode.c              |  40 ++++--
 fs/xfs/xfs_inode_item.c         |  47 ++++++-
 fs/xfs/xfs_ioctl.c              |  41 ++++--
 fs/xfs/xfs_iomap.c              |  10 +-
 fs/xfs/xfs_iops.c               |   2 +-
 fs/xfs/xfs_log.c                |  33 +++--
 fs/xfs/xfs_log_recover.c        | 161 ++++++++++++++---------
 fs/xfs/xfs_qm.c                 |  44 ++-----
 fs/xfs/xfs_refcount_item.c      |   2 +-
 fs/xfs/xfs_reflink.c            |  11 +-
 fs/xfs/xfs_rtalloc.c            |   2 +-
 fs/xfs/xfs_super.c              |   2 +-
 fs/xfs/xfs_symlink.c            |   5 +-
 fs/xfs/xfs_trace.h              |  48 ++++++-
 fs/xfs/xfs_trans.c              |  28 +---
 fs/xfs/xfs_trans.h              |  17 ++-
 fs/xfs/xfs_trans_ail.c          |  20 ++-
 fs/xfs/xfs_trans_buf.c          |  79 +++++++-----
 fs/xfs/xfs_trans_inode.c        |  14 ++
 fs/xfs/xfs_trans_priv.h         |  31 +++++
 include/linux/fs.h              |   1 +
 include/uapi/linux/fsmap.h      |   2 +-
 50 files changed, 1027 insertions(+), 709 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux