[GIT PULL] ext4 updates for 5.18-rc1

Theodore Ts'o
2022-03-23T22:01:42Z

The following changes since commit cfb92440ee71adcc2105b0890bb01ac3cddb8507:

Linux 5.17-rc5 (2022-02-20 13:07:20 -0800)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git tags/ext4_for_linus

for you to fetch changes up to 919adbfec29d5b89b3e45620653cbeeb0d42e6fd:

ext4: fix kernel doc warnings (2022-03-15 17:45:36 -0400)

----------------------------------------------------------------
Fix some bugs in converting ext4 to use the new mount API, as well as
more bug fixes and clean ups in the ext4 fast_commit feature (most
notably, in the tracepoints). In the jbd2 layer, the t_handle_lock
spinlock has been removed, with the last place where it was actually
needed replaced with an atomic cmpxchg.

----------------------------------------------------------------
Colin Ian King (1):
ext4: remove redundant assignment to variable split_flag1

Jan Kara (1):
ext4: warn when dirtying page w/o buffers in data=journal mode

Lukas Czerner (1):
ext4: fix remount with 'abort' option

Ojaswin Mujoo (2):
ext4: make mb_optimize_scan option work with set/unset mount cmd
ext4: make mb_optimize_scan performance mount option work with extents

Ritesh Harjani (23):
jbd2: fix use-after-free of transaction_t race
jbd2: kill t_handle_lock transaction spinlock
jbd2: remove CONFIG_JBD2_DEBUG to update t_max_wait
ext4: correct cluster len and clusters changed accounting in ext4_mb_mark_bb
ext4: fix ext4_mb_mark_bb() with flex_bg with fast_commit
ext4: refactor ext4_free_blocks() to pull out ext4_mb_clear_bb()
ext4: use in_range() for range checking in ext4_fc_replay_check_excluded
ext4: rename ext4_set_bits to mb_set_bits
ext4: no need to test for block bitmap bits in ext4_mb_mark_bb()
ext4: add ext4_sb_block_valid() refactored out of ext4_inode_block_valid()
ext4: add strict range checks while freeing blocks
ext4: add extra check in ext4_mb_mark_bb() to prevent against possible corruption
ext4: improve fast_commit performance and scalability
ext4: remove unused enum EXT4_FC_COMMIT_FAILED
ext4: fix ext4_fc_stats trace point
ext4: convert ext4_fc_track_dentry type events to use event class
ext4: do not call FC trace event in ext4_fc_commit() if FS does not support FC
ext4: return early for non-eligible fast_commit track events
ext4: add new trace event in ext4_fc_cleanup
ext4: add transaction tid info in fc_track events
ext4: add commit_tid info in jbd debug log
ext4: add commit tid info in ext4_fc_commit_start/stop trace events
ext4: fix remaining two trace events to use same printk convention

Theodore Ts'o (2):
ext4: don't BUG if someone dirty pages without asking ext4 first
ext4: fix kernel doc warnings

Wang Qing (1):
ext4: use time_is_before_jiffies() instead of open coding it

Yang Li (1):
ext4: fix ext4_mb_clear_bb() kernel-doc comment

Ye Bin (1):
ext4: fix fs corruption when tring to remove a non-empty directory with IO error

Zhang Yi (1):
ext4: fix underflow in ext4_max_bitmap_size()

lianzhi chang (1):
doc: fixed a typo in ext4 documentation

Documentation/filesystems/ext4/blocks.rst | 2 +-
fs/ext4/balloc.c | 1 +
fs/ext4/block_validity.c | 26 +++--
fs/ext4/ext4.h | 7 +-
fs/ext4/extents.c | 1 -
fs/ext4/fast_commit.c | 173 ++++++++++++++++++++--------
fs/ext4/fast_commit.h | 2 +-
fs/ext4/inline.c | 9 +-
fs/ext4/inode.c | 35 +++++-
fs/ext4/ioctl.c | 6 +-
fs/ext4/mballoc.c | 345 +++++++++++++++++++++++++++++++------------------------
fs/ext4/namei.c | 25 ++--
fs/ext4/resize.c | 7 +-
fs/ext4/super.c | 99 ++++++++++------
fs/jbd2/transaction.c | 70 ++++++-----
include/linux/jbd2.h | 3 -
include/trace/events/ext4.h | 298 +++++++++++++++++++++++++++++------------------
17 files changed, 696 insertions(+), 413 deletions(-)