Hi Linus, fresh batch of fixes for you, Cheers, Kent The following changes since commit 6ba59ff4227927d3a8530fc2973b80e94b54d58f: Linux 6.10-rc4 (2024-06-16 13:40:16 -0700) are available in the Git repository at: https://evilpiepirate.org/git/bcachefs.git tags/bcachefs-2024-06-22 for you to fetch changes up to bd4da0462ea7bf26b2a5df5528ec20c550f7ec41: bcachefs: Move the ei_flags setting to after initialization (2024-06-21 10:17:07 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.10-rc5 Lots of (mostly boring) fixes for syzbot bugs and rare(r) CI bugs. The LRU_TIME_BITS fix was slightly more involved; we only have 48 bits for the LRU position (we would prefer 64), so wraparound is possible for the cached data LRUs on a filesystem that has done sufficient (petabytes) reads; this is now handled. One notable user reported bugfix, where we were forgetting to correctly set the bucket data type, which should have been BCH_DATA_need_gc_gens instead of BCH_DATA_free; this was causing us to go emergency read-only on a filesystem that had seen heavy enough use to see bucket gen wraparoud. We're now starting to fix simple (safe) errors without requiring user intervention - i.e. a small incremental step towards full self healing. This is currently limited to just certain allocation information counters, and the error is still logged in the superblock; see that patch for more information. ("bcachefs: Fix safe errors by default"). ---------------------------------------------------------------- Kent Overstreet (20): bcachefs: Fix initialization order for srcu barrier bcachefs: Fix array-index-out-of-bounds bcachefs: Fix a locking bug in the do_discard_fast() path bcachefs: Fix shift overflow in read_one_super() bcachefs: Fix btree ID bitmasks bcachefs: Check for invalid btree IDs bcachefs: Fix early init error path in journal code bcachefs: delete_dead_snapshots() doesn't need to go RW bcachefs: Guard against overflowing LRU_TIME_BITS bcachefs: Handle cached data LRU wraparound bcachefs: Fix bch2_sb_downgrade_update() bcachefs: set_worker_desc() for delete_dead_snapshots bcachefs: Fix bch2_trans_put() bcachefs: Fix safe errors by default closures: Change BUG_ON() to WARN_ON() bcachefs: Fix missing alloc_data_type_set() bcachefs: Replace bare EEXIST with private error codes bcachefs: Fix I_NEW warning in race path in bch2_inode_insert() bcachefs: Use bch2_print_string_as_lines for long err bcachefs: Fix a UAF after write_super() Youling Tang (2): bcachefs: fix alignment of VMA for memory mapped files on THP bcachefs: Move the ei_flags setting to after initialization fs/bcachefs/alloc_background.c | 76 ++++-- fs/bcachefs/alloc_background.h | 8 +- fs/bcachefs/bcachefs.h | 5 + fs/bcachefs/bcachefs_format.h | 13 +- fs/bcachefs/bkey.c | 2 +- fs/bcachefs/bkey_methods.c | 6 +- fs/bcachefs/bkey_methods.h | 3 +- fs/bcachefs/btree_iter.c | 11 +- fs/bcachefs/btree_types.h | 16 +- fs/bcachefs/errcode.h | 3 + fs/bcachefs/error.c | 19 +- fs/bcachefs/error.h | 7 - fs/bcachefs/fs-ioctl.c | 2 +- fs/bcachefs/fs.c | 21 +- fs/bcachefs/journal.c | 3 + fs/bcachefs/journal_io.c | 13 +- fs/bcachefs/lru.h | 3 - fs/bcachefs/opts.h | 2 +- fs/bcachefs/recovery.c | 12 +- fs/bcachefs/sb-downgrade.c | 2 +- fs/bcachefs/sb-errors_format.h | 559 +++++++++++++++++++++-------------------- fs/bcachefs/snapshot.c | 9 +- fs/bcachefs/str_hash.h | 2 +- fs/bcachefs/super-io.c | 7 +- fs/bcachefs/super.c | 13 +- lib/closure.c | 10 +- 26 files changed, 472 insertions(+), 355 deletions(-)