All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jaegeuk Kim <jaegeuk@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Linux F2FS Dev Mailing List
	<linux-f2fs-devel@lists.sourceforge.net>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: [GIT PULL] f2fs update for 6.9-rc1
Date: Mon, 18 Mar 2024 11:02:31 -0700	[thread overview]
Message-ID: <ZfiBt0gRe_Elp7hE@google.com> (raw)

Hi Linus,

Could you please consider this pull request?

Thanks,

The following changes since commit 54be6c6c5ae8e0d93a6c4641cb7528eb0b6ba478:

  Linux 6.8-rc3 (2024-02-04 12:20:36 +0000)

are available in the Git repository at:

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

for you to fetch changes up to eb70d5a6c932d9d23f4bb3e7b83782c21ac4b064:

  f2fs: fix to avoid use-after-free issue in f2fs_filemap_fault (2024-03-14 09:14:53 -0700)

----------------------------------------------------------------
f2fs update for 6.9-rc1

In this round, there are a number of updates on mainly two areas: Zoned block
device support and Per-file compression. For example, we've found several issues
to support Zoned block device especially having large sections regarding to GC
and file pinning used for Android devices. In compression side, we've fixed many
corner race conditions that had broken the design assumption.

Enhancement:
 - Support file pinning for Zoned block device having large section
 - Enhance the data recovery after sudden power cut on Zoned block device
 - Add more error injection cases to easily detect the kernel panics
 - add a proc entry show the entire disk layout
 - Improve various error paths paniced by BUG_ON in block allocation and GC
 - support SEEK_DATA and SEEK_HOLE for compression files

Bug fix:
 - fix to avoid use-after-free issue in f2fs_filemap_fault
 - fix some race conditions to break the atomic write design assumption
 - fix to truncate meta inode pages forcely
 - resolve various per-file compression issues wrt the space management and
   compression policies
 - fix some swap-related bugs

In addition, we removed deprecated codes such as io_bits and heap_allocation,
and also fixed minor error handling routines with neat debugging messages.

----------------------------------------------------------------
Chao Yu (29):
      f2fs: compress: fix to guarantee persisting compressed blocks by CP
      f2fs: compress: fix to cover normal cluster write with cp_rwsem
      f2fs: compress: fix to avoid inconsistence bewteen i_blocks and dnode
      f2fs: fix to remove unnecessary f2fs_bug_on() to avoid panic
      f2fs: introduce FAULT_BLKADDR_CONSISTENCE
      f2fs: zone: fix to wait completion of last bio in zone correctly
      f2fs: support printk_ratelimited() in f2fs_printk()
      f2fs: use f2fs_err_ratelimited() to avoid redundant logs
      f2fs: compress: fix to cover f2fs_disable_compressed_file() w/ i_sem
      f2fs: fix to avoid potential panic during recovery
      f2fs: fix to create selinux label during whiteout initialization
      f2fs: compress: fix to check zstd compress level correctly in mount option
      f2fs: introduce get_available_block_count() for cleanup
      f2fs: delete f2fs_get_new_segment() declaration
      f2fs: fix to handle segment allocation failure correctly
      f2fs: compress: fix to check compress flag w/ .i_sem lock
      f2fs: introduce FAULT_NO_SEGMENT
      f2fs: fix to use correct segment type in f2fs_allocate_data_block()
      f2fs: fix to check return value in f2fs_insert_range()
      f2fs: ro: compress: fix to avoid caching unaligned extent
      f2fs: ro: don't start discard thread for readonly image
      f2fs: fix blkofs_end correctly in f2fs_migrate_blocks()
      f2fs: relocate f2fs_precache_extents() in f2fs_swap_activate()
      f2fs: clean up new_curseg()
      f2fs: fix to reset fields for unloaded curseg
      f2fs: introduce SEGS_TO_BLKS/BLKS_TO_SEGS for cleanup
      f2fs: fix to truncate meta inode pages forcely
      f2fs: zone: fix to remove pow2 check condition for zoned block device
      f2fs: fix to avoid use-after-free issue in f2fs_filemap_fault

Daeho Jeong (4):
      f2fs: separate f2fs_gc_range() to use GC for a range
      f2fs: support SEEK_DATA and SEEK_HOLE for compression files
      f2fs: support file pinning for zoned devices
      f2fs: prevent atomic write on pinned file

HuangXiaojia (1):
      f2fs: Use folio in f2fs_read_merkle_tree_page

Jaegeuk Kim (10):
      f2fs: remove unnecessary f2fs_put_page in f2fs_rename
      f2fs: deprecate io_bits
      f2fs: use BLKS_PER_SEG, BLKS_PER_SEC, and SEGS_PER_SEC
      f2fs: kill heap-based allocation
      f2fs: prevent an f2fs_gc loop during disable_checkpoint
      f2fs: check number of blocks in a current section
      f2fs: fix write pointers all the time
      f2fs: print zone status in string and some log
      f2fs: allow to mount if cap is 100
      f2fs: add a proc entry show disk layout

Jeffrey Hugo (1):
      f2fs: doc: Fix bouncing email address for Sahitya Tummala

Sheng Yong (1):
      f2fs: compress: fix to check unreleased compressed cluster

Sunmin Jeong (2):
      f2fs: mark inode dirty for FI_ATOMIC_COMMITTED flag
      f2fs: truncate page cache before clearing flags when aborting atomic write

Wenjie Qi (1):
      f2fs: fix NULL pointer dereference in f2fs_submit_page_write()

Wu Bo (1):
      f2fs: check free sections before disable checkpoint

Xiuhong Wang (2):
      f2fs: compress: relocate some judgments in f2fs_reserve_compress_blocks
      f2fs: compress: fix reserve_cblocks counting error when out of space

Zhiguo Niu (8):
      f2fs: compress: remove some redundant codes in f2fs_cache_compressed_page
      f2fs: use IS_INODE replace IS_DNODE in f2fs_flush_inline_data
      f2fs: stop checkpoint when get a out-of-bounds segment
      f2fs: fix to do sanity check in update_sit_entry
      f2fs: fix to check return value __allocate_new_segment
      f2fs: fix to check return value of f2fs_gc_range
      f2fs: unify the error handling of f2fs_is_valid_blkaddr
      f2fs: fix to handle error paths of {new,change}_curseg()

 Documentation/ABI/testing/sysfs-fs-f2fs |  52 ++--
 Documentation/filesystems/f2fs.rst      |  54 ++--
 fs/f2fs/checkpoint.c                    |  74 +++---
 fs/f2fs/compress.c                      |  55 ++--
 fs/f2fs/data.c                          | 191 +++++---------
 fs/f2fs/debug.c                         |  11 +-
 fs/f2fs/dir.c                           |  10 +-
 fs/f2fs/extent_cache.c                  |   5 +-
 fs/f2fs/f2fs.h                          | 241 ++++++++++-------
 fs/f2fs/file.c                          | 171 +++++++-----
 fs/f2fs/gc.c                            | 129 +++++-----
 fs/f2fs/gc.h                            |   4 +-
 fs/f2fs/namei.c                         |  36 +--
 fs/f2fs/node.c                          |  26 +-
 fs/f2fs/node.h                          |   4 +-
 fs/f2fs/recovery.c                      |  56 ++--
 fs/f2fs/segment.c                       | 444 ++++++++++++++++++++------------
 fs/f2fs/segment.h                       |  90 ++++---
 fs/f2fs/super.c                         | 208 +++++----------
 fs/f2fs/sysfs.c                         |  52 +++-
 fs/f2fs/verity.c                        |  16 +-
 include/linux/f2fs_fs.h                 |   8 +-
 22 files changed, 1054 insertions(+), 883 deletions(-)

WARNING: multiple messages have this Message-ID (diff)
From: Jaegeuk Kim <jaegeuk@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linux F2FS Dev Mailing List
	<linux-f2fs-devel@lists.sourceforge.net>
Subject: [f2fs-dev] [GIT PULL] f2fs update for 6.9-rc1
Date: Mon, 18 Mar 2024 11:02:31 -0700	[thread overview]
Message-ID: <ZfiBt0gRe_Elp7hE@google.com> (raw)

Hi Linus,

Could you please consider this pull request?

Thanks,

The following changes since commit 54be6c6c5ae8e0d93a6c4641cb7528eb0b6ba478:

  Linux 6.8-rc3 (2024-02-04 12:20:36 +0000)

are available in the Git repository at:

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

for you to fetch changes up to eb70d5a6c932d9d23f4bb3e7b83782c21ac4b064:

  f2fs: fix to avoid use-after-free issue in f2fs_filemap_fault (2024-03-14 09:14:53 -0700)

----------------------------------------------------------------
f2fs update for 6.9-rc1

In this round, there are a number of updates on mainly two areas: Zoned block
device support and Per-file compression. For example, we've found several issues
to support Zoned block device especially having large sections regarding to GC
and file pinning used for Android devices. In compression side, we've fixed many
corner race conditions that had broken the design assumption.

Enhancement:
 - Support file pinning for Zoned block device having large section
 - Enhance the data recovery after sudden power cut on Zoned block device
 - Add more error injection cases to easily detect the kernel panics
 - add a proc entry show the entire disk layout
 - Improve various error paths paniced by BUG_ON in block allocation and GC
 - support SEEK_DATA and SEEK_HOLE for compression files

Bug fix:
 - fix to avoid use-after-free issue in f2fs_filemap_fault
 - fix some race conditions to break the atomic write design assumption
 - fix to truncate meta inode pages forcely
 - resolve various per-file compression issues wrt the space management and
   compression policies
 - fix some swap-related bugs

In addition, we removed deprecated codes such as io_bits and heap_allocation,
and also fixed minor error handling routines with neat debugging messages.

----------------------------------------------------------------
Chao Yu (29):
      f2fs: compress: fix to guarantee persisting compressed blocks by CP
      f2fs: compress: fix to cover normal cluster write with cp_rwsem
      f2fs: compress: fix to avoid inconsistence bewteen i_blocks and dnode
      f2fs: fix to remove unnecessary f2fs_bug_on() to avoid panic
      f2fs: introduce FAULT_BLKADDR_CONSISTENCE
      f2fs: zone: fix to wait completion of last bio in zone correctly
      f2fs: support printk_ratelimited() in f2fs_printk()
      f2fs: use f2fs_err_ratelimited() to avoid redundant logs
      f2fs: compress: fix to cover f2fs_disable_compressed_file() w/ i_sem
      f2fs: fix to avoid potential panic during recovery
      f2fs: fix to create selinux label during whiteout initialization
      f2fs: compress: fix to check zstd compress level correctly in mount option
      f2fs: introduce get_available_block_count() for cleanup
      f2fs: delete f2fs_get_new_segment() declaration
      f2fs: fix to handle segment allocation failure correctly
      f2fs: compress: fix to check compress flag w/ .i_sem lock
      f2fs: introduce FAULT_NO_SEGMENT
      f2fs: fix to use correct segment type in f2fs_allocate_data_block()
      f2fs: fix to check return value in f2fs_insert_range()
      f2fs: ro: compress: fix to avoid caching unaligned extent
      f2fs: ro: don't start discard thread for readonly image
      f2fs: fix blkofs_end correctly in f2fs_migrate_blocks()
      f2fs: relocate f2fs_precache_extents() in f2fs_swap_activate()
      f2fs: clean up new_curseg()
      f2fs: fix to reset fields for unloaded curseg
      f2fs: introduce SEGS_TO_BLKS/BLKS_TO_SEGS for cleanup
      f2fs: fix to truncate meta inode pages forcely
      f2fs: zone: fix to remove pow2 check condition for zoned block device
      f2fs: fix to avoid use-after-free issue in f2fs_filemap_fault

Daeho Jeong (4):
      f2fs: separate f2fs_gc_range() to use GC for a range
      f2fs: support SEEK_DATA and SEEK_HOLE for compression files
      f2fs: support file pinning for zoned devices
      f2fs: prevent atomic write on pinned file

HuangXiaojia (1):
      f2fs: Use folio in f2fs_read_merkle_tree_page

Jaegeuk Kim (10):
      f2fs: remove unnecessary f2fs_put_page in f2fs_rename
      f2fs: deprecate io_bits
      f2fs: use BLKS_PER_SEG, BLKS_PER_SEC, and SEGS_PER_SEC
      f2fs: kill heap-based allocation
      f2fs: prevent an f2fs_gc loop during disable_checkpoint
      f2fs: check number of blocks in a current section
      f2fs: fix write pointers all the time
      f2fs: print zone status in string and some log
      f2fs: allow to mount if cap is 100
      f2fs: add a proc entry show disk layout

Jeffrey Hugo (1):
      f2fs: doc: Fix bouncing email address for Sahitya Tummala

Sheng Yong (1):
      f2fs: compress: fix to check unreleased compressed cluster

Sunmin Jeong (2):
      f2fs: mark inode dirty for FI_ATOMIC_COMMITTED flag
      f2fs: truncate page cache before clearing flags when aborting atomic write

Wenjie Qi (1):
      f2fs: fix NULL pointer dereference in f2fs_submit_page_write()

Wu Bo (1):
      f2fs: check free sections before disable checkpoint

Xiuhong Wang (2):
      f2fs: compress: relocate some judgments in f2fs_reserve_compress_blocks
      f2fs: compress: fix reserve_cblocks counting error when out of space

Zhiguo Niu (8):
      f2fs: compress: remove some redundant codes in f2fs_cache_compressed_page
      f2fs: use IS_INODE replace IS_DNODE in f2fs_flush_inline_data
      f2fs: stop checkpoint when get a out-of-bounds segment
      f2fs: fix to do sanity check in update_sit_entry
      f2fs: fix to check return value __allocate_new_segment
      f2fs: fix to check return value of f2fs_gc_range
      f2fs: unify the error handling of f2fs_is_valid_blkaddr
      f2fs: fix to handle error paths of {new,change}_curseg()

 Documentation/ABI/testing/sysfs-fs-f2fs |  52 ++--
 Documentation/filesystems/f2fs.rst      |  54 ++--
 fs/f2fs/checkpoint.c                    |  74 +++---
 fs/f2fs/compress.c                      |  55 ++--
 fs/f2fs/data.c                          | 191 +++++---------
 fs/f2fs/debug.c                         |  11 +-
 fs/f2fs/dir.c                           |  10 +-
 fs/f2fs/extent_cache.c                  |   5 +-
 fs/f2fs/f2fs.h                          | 241 ++++++++++-------
 fs/f2fs/file.c                          | 171 +++++++-----
 fs/f2fs/gc.c                            | 129 +++++-----
 fs/f2fs/gc.h                            |   4 +-
 fs/f2fs/namei.c                         |  36 +--
 fs/f2fs/node.c                          |  26 +-
 fs/f2fs/node.h                          |   4 +-
 fs/f2fs/recovery.c                      |  56 ++--
 fs/f2fs/segment.c                       | 444 ++++++++++++++++++++------------
 fs/f2fs/segment.h                       |  90 ++++---
 fs/f2fs/super.c                         | 208 +++++----------
 fs/f2fs/sysfs.c                         |  52 +++-
 fs/f2fs/verity.c                        |  16 +-
 include/linux/f2fs_fs.h                 |   8 +-
 22 files changed, 1054 insertions(+), 883 deletions(-)


_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

             reply	other threads:[~2024-03-18 18:02 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-18 18:02 Jaegeuk Kim [this message]
2024-03-18 18:02 ` [f2fs-dev] [GIT PULL] f2fs update for 6.9-rc1 Jaegeuk Kim
2024-03-18 19:21 ` pr-tracker-bot
2024-03-18 19:21   ` [f2fs-dev] " pr-tracker-bot
2024-03-18 20:45 ` patchwork-bot+f2fs
2024-03-18 20:45   ` patchwork-bot+f2fs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZfiBt0gRe_Elp7hE@google.com \
    --to=jaegeuk@kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.