[GIT PULL] f2fs update for 6.11-rc1

From: Jaegeuk Kim
Date: Tue Jul 23 2024 - 16:58:21 EST


Hi Linus,

Could you please consider this pull request?

Thanks,

The following changes since commit 2ef5971ff345d3c000873725db555085e0131961:

Merge tag 'vfs-6.10-rc4.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs (2024-06-11 12:04:21 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git tags/f2fs-for-6.11-rc1

for you to fetch changes up to bed6b0317441d82c32506750ccd868d83850e6f4:

f2fs: clean up addrs_per_{inode,block}() (2024-07-10 23:15:36 +0000)

----------------------------------------------------------------
f2fs update for 6.11-rc1

It's a pretty small update including mostly minor bug fixes in zoned storage
along with the large section support.

Enhancement:
- add support for FS_IOC_GETFSSYSFSPATH
- enable atgc dynamically if conditions are met
- use new ioprio Macro to get ckpt thread ioprio level
- remove unreachable lazytime mount option parsing

Bug fix:
- fix null reference error when checking end of zone
- fix start segno of large section
- fix to cover read extent cache access with lock
- don't dirty inode for readonly filesystem
- allocate a new section if curseg is not the first seg in its zone
- only fragment segment in the same section
- truncate preallocated blocks in f2fs_file_open()
- fix to avoid use SSR allocate when do defragment
- fix to force buffered IO on inline_data inode

And, it includes some minor code clean-ups, and sanity checks.

----------------------------------------------------------------
Chao Yu (12):
f2fs: fix to do sanity check on F2FS_INLINE_DATA flag in inode during GC
f2fs: fix to do sanity check on blocks for inline_data inode
f2fs: add support for FS_IOC_GETFSSYSFSPATH
f2fs: fix to force buffered IO on inline_data inode
f2fs: fix to don't dirty inode for readonly filesystem
f2fs: fix return value of f2fs_convert_inline_inode()
f2fs: fix to cover read extent cache access with lock
f2fs: fix to truncate preallocated blocks in f2fs_file_open()
f2fs: remove redundant sanity check in sanity_check_inode()
f2fs: fix to update user block counts in block_operations()
f2fs: clean up F2FS_I()
f2fs: clean up addrs_per_{inode,block}()

Daejun Park (1):
f2fs: fix null reference error when checking end of zone

Eric Sandeen (1):
f2fs: remove unreachable lazytime mount option parsing

Jaegeuk Kim (2):
f2fs: clean up set REQ_RAHEAD given rac
f2fs: assign CURSEG_ALL_DATA_ATGC if blkaddr is valid

Sheng Yong (3):
f2fs: alloc new section if curseg is not the first seg in its zone
f2fs: fix start segno of large section
f2fs: only fragment segment in the same section

Sunmin Jeong (2):
f2fs: use meta inode for GC of atomic file
f2fs: use meta inode for GC of COW file

Zhiguo Niu (5):
f2fs: fix to remove redundant SBI_NEED_FSCK flag set
f2fs: fix to avoid use SSR allocate when do defragment
f2fs: use new ioprio Macro to get ckpt thread ioprio level
f2fs: enable atgc dynamically if conditions are met
f2fs: fix to use mnt_{want,drop}_write_file replace file_{start,end}_wrtie

fs/f2fs/checkpoint.c | 11 ++--
fs/f2fs/compress.c | 2 +-
fs/f2fs/data.c | 27 ++++++----
fs/f2fs/extent_cache.c | 48 +++++++----------
fs/f2fs/f2fs.h | 78 +++++++++++++++-------------
fs/f2fs/file.c | 135 ++++++++++++++++++++++++++++++++++--------------
fs/f2fs/gc.c | 24 ++++++---
fs/f2fs/inline.c | 28 ++++++++--
fs/f2fs/inode.c | 84 ++++++++++++------------------
fs/f2fs/namei.c | 20 +++----
fs/f2fs/recovery.c | 11 ++--
fs/f2fs/segment.c | 54 +++++++++++++++----
fs/f2fs/segment.h | 3 +-
fs/f2fs/super.c | 11 +---
fs/f2fs/sysfs.c | 12 ++---
include/linux/f2fs_fs.h | 7 ++-
16 files changed, 329 insertions(+), 226 deletions(-)