per the maintainer thread discussion and precedent in xfs and btrfs for repair code in RCs, journal_rewind is again included The following changes since commit e04c78d86a9699d136910cfc0bdcf01087e3267e: Linux 6.16-rc2 (2025-06-15 13:49:41 -0700) are available in the Git repository at: git://evilpiepirate.org/bcachefs.git tags/bcachefs-2025-06-26 for you to fetch changes up to ef6fac0f9e5d0695cee1d820c727fe753eca52d5: bcachefs: Plumb correct ip to trans_relock_fail tracepoint (2025-06-26 00:01:16 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.16-rc4 ---------------------------------------------------------------- Alan Huang (7): bcachefs: Don't allocate new memory when mempool is exhausted bcachefs: Fix alloc_req use after free bcachefs: Add missing EBUG_ON bcachefs: Delay calculation of trans->journal_u64s bcachefs: Move bset size check before csum check bcachefs: Fix pool->alloc NULL pointer dereference bcachefs: Don't unlock the trans if ret doesn't match BCH_ERR_operation_blocked Bharadwaj Raju (1): bcachefs: don't return fsck_fix for unfixable node errors in __btree_err Kent Overstreet (43): bcachefs: trace_extent_trim_atomic bcachefs: btree iter tracepoints bcachefs: Fix bch2_journal_keys_peek_prev_min() bcachefs: btree_iter: fix updates, journal overlay bcachefs: better __bch2_snapshot_is_ancestor() assert bcachefs: pass last_seq into fs_journal_start() bcachefs: Fix "now allowing incompatible features" message bcachefs: Fix snapshot_key_missing_inode_snapshot repair bcachefs: fsck: fix add_inode() bcachefs: fsck: fix extent past end of inode repair bcachefs: opts.journal_rewind bcachefs: Kill unused tracepoints bcachefs: mark more errors autofix bcachefs: fsck: Improve check_key_has_inode() bcachefs: Call bch2_fs_init_rw() early if we'll be going rw bcachefs: Fix __bch2_inum_to_path() when crossing subvol boundaries bcachefs: fsck: Print path when we find a subvol loop bcachefs: fsck: Fix remove_backpointer() for subvol roots bcachefs: fsck: Fix reattach_inode() for subvol roots bcachefs: fsck: check_directory_structure runs in reverse order bcachefs: fsck: additional diagnostics for reattach_inode() bcachefs: fsck: check_subdir_count logs path bcachefs: fsck: Fix check_path_loop() + snapshots bcachefs: Fix bch2_read_bio_to_text() bcachefs: Fix restart handling in btree_node_scrub_work() bcachefs: fsck: Fix check_directory_structure when no check_dirents bcachefs: fsck: fix unhandled restart in topology repair bcachefs: fsck: Fix oops in key_visible_in_snapshot() bcachefs: fix spurious error in read_btree_roots() bcachefs: Fix missing newlines before ero bcachefs: Fix *__bch2_trans_subbuf_alloc() error path bcachefs: Don't log fsck err in the journal if doing repair elsewhere bcachefs: Add missing key type checks to check_snapshot_exists() bcachefs: Add missing bch2_err_class() to fileattr_set() bcachefs: fix spurious error_throw bcachefs: Fix range in bch2_lookup_indirect_extent() error path bcachefs: Check for bad write buffer key when moving from journal bcachefs: Use wait_on_allocator() when allocating journal bcachefs: fix bch2_journal_keys_peek_prev_min() underflow bcachefs: btree_root_unreadable_and_scan_found_nothing should not be autofix bcachefs: Ensure btree node scan runs before checking for scanned nodes bcachefs: Ensure we rewind to run recovery passes bcachefs: Plumb correct ip to trans_relock_fail tracepoint fs/bcachefs/alloc_background.c | 13 +- fs/bcachefs/backpointers.c | 2 +- fs/bcachefs/bcachefs.h | 3 +- fs/bcachefs/btree_gc.c | 37 ++-- fs/bcachefs/btree_io.c | 74 ++++---- fs/bcachefs/btree_iter.c | 173 ++++++++++++------ fs/bcachefs/btree_journal_iter.c | 82 ++++++--- fs/bcachefs/btree_journal_iter_types.h | 5 +- fs/bcachefs/btree_locking.c | 12 +- fs/bcachefs/btree_node_scan.c | 6 +- fs/bcachefs/btree_node_scan.h | 2 +- fs/bcachefs/btree_trans_commit.c | 18 +- fs/bcachefs/btree_types.h | 1 + fs/bcachefs/btree_update.c | 16 +- fs/bcachefs/btree_update.h | 5 +- fs/bcachefs/btree_update_interior.c | 16 +- fs/bcachefs/btree_update_interior.h | 3 + fs/bcachefs/btree_write_buffer.c | 8 +- fs/bcachefs/btree_write_buffer.h | 6 + fs/bcachefs/chardev.c | 29 ++- fs/bcachefs/data_update.c | 1 + fs/bcachefs/errcode.h | 5 - fs/bcachefs/error.c | 4 +- fs/bcachefs/extent_update.c | 13 +- fs/bcachefs/fs.c | 3 +- fs/bcachefs/fsck.c | 317 +++++++++++++++++++++++---------- fs/bcachefs/inode.h | 5 + fs/bcachefs/io_read.c | 7 +- fs/bcachefs/journal.c | 20 +-- fs/bcachefs/journal.h | 2 +- fs/bcachefs/journal_io.c | 26 ++- fs/bcachefs/namei.c | 30 +++- fs/bcachefs/opts.h | 5 + fs/bcachefs/recovery.c | 24 ++- fs/bcachefs/recovery_passes.c | 19 +- fs/bcachefs/recovery_passes.h | 9 + fs/bcachefs/reflink.c | 12 +- fs/bcachefs/sb-errors_format.h | 19 +- fs/bcachefs/snapshot.c | 14 +- fs/bcachefs/super.c | 13 +- fs/bcachefs/super.h | 1 + fs/bcachefs/trace.h | 125 +++---------- 42 files changed, 734 insertions(+), 451 deletions(-)