lkml.org 
[lkml]   [2020]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[GIT PULL] xfs: new code for 5.7, part 2
Hi Linus,

Please pull this second batch of new changes for 5.7. As promised last
week, this batch changes how xfs interacts with memory reclaim; how the
log batches and throttles log items; how hard writes near ENOSPC will
try to squeeze more space out of the filesystem; and hopefully fix the
last of the umount hangs after a catastrophic failure.

This branch merges cleanly with master as of a few minutes ago, so
please let me know if anything strange happens.

--D

The following changes since commit 27fb5a72f50aa770dd38b0478c07acacef97e3e7:

xfs: prohibit fs freezing when using empty transactions (2020-03-26 08:19:24 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git tags/xfs-5.7-merge-12

for you to fetch changes up to 5833112df7e9a306af9af09c60127b92ed723962:

xfs: reflink should force the log out if mounted with wsync (2020-04-06 08:44:39 -0700)

----------------------------------------------------------------
(More) new code for 5.7:
- Validate the realtime geometry in the superblock when mounting
- Refactor a bunch of tricky flag handling in the log code
- Flush the CIL more judiciously so that we don't wait until there are
millions of log items consuming a lot of memory.
- Throttle transaction commits to prevent the xfs frontend from flooding
the CIL with too many log items.
- Account metadata buffers correctly for memory reclaim.
- Mark slabs properly for memory reclaim. These should help reclaim run
more effectively when XFS is using a lot of memory.
- Don't write a garbage log record at unmount time if we're trying to
trigger summary counter recalculation at next mount.
- Don't block the AIL on locked dquot/inode buffers; instead trigger its
backoff mechanism to give the lock holder a chance to finish up.
- Ratelimit writeback flushing when buffered writes encounter ENOSPC.
- Other minor cleanups.
- Make reflink a synchronous operation when the fs is mounted with wsync
or sync, which means that now we force the log to disk to record the
changes.

----------------------------------------------------------------
Brian Foster (3):
xfs: trylock underlying buffer on dquot flush
xfs: return locked status of inode buffer on xfsaild push
xfs: fix inode number overflow in ifree cluster helper

Christoph Hellwig (3):
xfs: split xlog_ticket_done
xfs: factor out a new xfs_log_force_inode helper
xfs: reflink should force the log out if mounted with wsync

Darrick J. Wong (3):
xfs: validate the realtime geometry in xfs_validate_sb_common
xfs: don't write a corrupt unmount record to force summary counter recalc
xfs: ratelimit inode flush on buffered write ENOSPC

Dave Chinner (15):
xfs: don't try to write a start record into every iclog
xfs: re-order initial space accounting checks in xlog_write
xfs: refactor and split xfs_log_done()
xfs: kill XLOG_TIC_INITED
xfs: merge xlog_commit_record with xlog_write_done
xfs: refactor unmount record writing
xfs: remove some stale comments from the log code
xfs: Lower CIL flush limit for large logs
xfs: Throttle commits on delayed background CIL push
xfs: don't allow log IO to be throttled
xfs: Improve metadata buffer reclaim accountability
xfs: correctly acount for reclaimable slabs
xfs: factor common AIL item deletion code
xfs: tail updates only need to occur when LSN changes
xfs: factor inode lookup from xfs_ifree_cluster

Kaixu Xia (2):
xfs: remove unnecessary ternary from xfs_create
xfs: remove redundant variable assignment in xfs_symlink()

fs/xfs/libxfs/xfs_sb.c | 32 +++++
fs/xfs/xfs_buf.c | 11 +-
fs/xfs/xfs_dquot.c | 6 +-
fs/xfs/xfs_dquot_item.c | 3 +-
fs/xfs/xfs_export.c | 14 +-
fs/xfs/xfs_file.c | 16 +--
fs/xfs/xfs_inode.c | 174 +++++++++++++---------
fs/xfs/xfs_inode.h | 1 +
fs/xfs/xfs_inode_item.c | 31 ++--
fs/xfs/xfs_log.c | 372 +++++++++++++++++-------------------------------
fs/xfs/xfs_log.h | 4 -
fs/xfs/xfs_log_cil.c | 55 +++++--
fs/xfs/xfs_log_priv.h | 75 +++++++---
fs/xfs/xfs_mount.h | 1 +
fs/xfs/xfs_qm.c | 14 +-
fs/xfs/xfs_super.c | 17 ++-
fs/xfs/xfs_symlink.c | 1 -
fs/xfs/xfs_trace.h | 15 +-
fs/xfs/xfs_trans.c | 27 ++--
fs/xfs/xfs_trans_ail.c | 88 +++++++-----
fs/xfs/xfs_trans_priv.h | 6 +-
21 files changed, 512 insertions(+), 451 deletions(-)

\
 
 \ /
  Last update: 2020-04-09 20:16    [W:0.032 / U:0.188 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site