Hi Linus, another batch of bcachefs fixes. Nothing too crazy in this one, and it looks like (fingers crossed) the recovery and repair issues are settling down - although there's going to be a long tail there, as we've still yet to really ramp up on error injection or syzbot. For users - if anyone is seeing bugs that impact filesystem availability, make sure you're reporting those and be noisy about it; all the non critical stuff should be reported too, but are lower priority for now. Cheers, Kent The following changes since commit ad29cf999a9161e7849aa229d2028854f90728c2: bcachefs: set_btree_iter_dontneed also clears should_be_locked (2024-04-15 13:31:15 -0400) are available in the Git repository at: https://evilpiepirate.org/git/bcachefs.git tags/bcachefs-2024-04-22 for you to fetch changes up to e858beeddfa3a400844c0e22d2118b3b52f1ea5e: bcachefs: If we run merges at a lower watermark, they must be nonblocking (2024-04-22 01:26:51 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.9-rc6 - fix a few more deadlocks in recovery - fix u32/u64 issues in mi_btree_bitmap - btree key cache shrinker now actually frees, with more instrumentation coming so we can verify that it's working correctly more easily in the future ---------------------------------------------------------------- Kent Overstreet (14): bcachefs: Fix null ptr deref in twf from BCH_IOCTL_FSCK_OFFLINE bcachefs: node scan: ignore multiple nodes with same seq if interior bcachefs: make sure to release last journal pin in replay bcachefs: Fix bch2_dev_btree_bitmap_marked_sectors() shift bcachefs: KEY_TYPE_error is allowed for reflink bcachefs: fix leak in bch2_gc_write_reflink_key bcachefs: Fix bio alloc in check_extent_checksum() bcachefs: Check for journal entries overruning end of sb clean section bcachefs: Fix missing call to bch2_fs_allocator_background_exit() bcachefs: bkey_cached.btree_trans_barrier_seq needs to be a ulong bcachefs: Tweak btree key cache shrinker so it actually frees bcachefs: Fix deadlock in journal write path bcachefs: Fix inode early destruction path bcachefs: If we run merges at a lower watermark, they must be nonblocking Nathan Chancellor (1): bcachefs: Fix format specifier in validate_bset_keys() fs/bcachefs/backpointers.c | 2 +- fs/bcachefs/bcachefs_format.h | 3 +- fs/bcachefs/btree_gc.c | 3 +- fs/bcachefs/btree_io.c | 2 +- fs/bcachefs/btree_key_cache.c | 19 +++--------- fs/bcachefs/btree_node_scan.c | 2 ++ fs/bcachefs/btree_types.h | 2 +- fs/bcachefs/btree_update_interior.c | 6 +++- fs/bcachefs/chardev.c | 4 ++- fs/bcachefs/fs.c | 9 ++++-- fs/bcachefs/journal_io.c | 60 ++++++++++++++++++++++++++----------- fs/bcachefs/recovery.c | 5 +++- fs/bcachefs/sb-clean.c | 8 +++++ fs/bcachefs/sb-errors_types.h | 3 +- fs/bcachefs/sb-members.c | 4 +-- fs/bcachefs/sb-members.h | 6 ++-- fs/bcachefs/super.c | 1 + fs/bcachefs/thread_with_file.c | 15 ++++++++-- fs/bcachefs/thread_with_file.h | 3 ++ 19 files changed, 105 insertions(+), 52 deletions(-)