Every week I keep telling myself "boy, that was a busy week of bugfixing, but next week is sure to finally slow down a bit". Hah. But it's all pretty small and boring. A note on repair to users: -------------------------- We're continuing to steadily improve on self healing/automatic repair; we want to automatically repair and mount no matter what filesystem damage has occurred (and I've been seeing some fun ones, we had one this week that was from pcie power savings mode gone haywire). But we aren't doing this all at once, because repair code is among the most fiddly and least well tested: we're steadily adding error paths to the whitelist for automatic repair as they come up. So if you ever run into something where a manual fsck is required, do drop me a note and include the output of 'bcachefs show-super -f errors' - that'll tell me what to add to the whitelist. The following changes since commit b4432656b36e5cc1d50a1f2dc15357543add530e: Linux 6.15-rc4 (2025-04-27 15:19:23 -0700) are available in the Git repository at: git://evilpiepirate.org/bcachefs.git tags/bcachefs-2025-05-01 for you to fetch changes up to 6846100b00d97d3d6f05766ae86a0d821d849e78: bcachefs: Remove incorrect __counted_by annotation (2025-05-01 16:38:58 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.15-rc5 Lots of assorted small fixes... - Some repair path fixes, a fix for -ENOMEM when reconstructing lots of alloc info on large filesystems, upgrade for ancient 0.14 filesystems, etc. - Various assert tweaks; assert -> ERO, ERO -> log the error in the superblock and continue - casefolding now uses d_ops like on other casefolding filesystems - fix device label create on device add, fix bucket array resize on filesystem resize - fix xattrs with FORTIFY_SOURCE builds with gcc-15/clang ---------------------------------------------------------------- Alan Huang (1): bcachefs: Remove incorrect __counted_by annotation Kent Overstreet (21): bcachefs: Fix losing return code in next_fiemap_extent() bcachefs: Use generic_set_sb_d_ops for standard casefolding d_ops bcachefs: Emit unicode version message on startup bcachefs: Add missing utf8_unload() bcachefs: Run BCH_RECOVERY_PASS_reconstruct_snapshots on missing subvol -> snapshot bcachefs: Add upgrade table entry from 0.14 bcachefs: fix bch2_dev_buckets_resize() bcachefs: Improve bch2_dev_bucket_missing() bcachefs: Don't generate alloc updates to invalid buckets bcachefs: btree_node_data_missing is now autofix bcachefs: btree_root_unreadable_and_scan_found_nothing autofix for non data btrees bcachefs: More informative error message when shutting down due to error bcachefs: Use bch2_kvmalloc() for journal keys array bcachefs: Topology error after insert is now an ERO bcachefs: improve missing journal write device error message bcachefs: readdir fixes bcachefs: Kill ERO in __bch2_i_sectors_acct() bcachefs: check for inode.bi_sectors underflow bcachefs: Kill ERO for i_blocks check in truncate bcachefs: Fix __bch2_dev_group_set() bcachefs: add missing sched_annotate_sleep() fs/bcachefs/btree_gc.c | 27 ++++++++++++++++++-- fs/bcachefs/btree_journal_iter.c | 2 +- fs/bcachefs/btree_update_interior.c | 49 ++++++++++++++++++++++++------------- fs/bcachefs/buckets.c | 15 ++++++++---- fs/bcachefs/dirent.c | 4 +-- fs/bcachefs/disk_groups.c | 25 +++++++++---------- fs/bcachefs/ec.c | 4 +-- fs/bcachefs/error.c | 4 ++- fs/bcachefs/fs-io.c | 44 ++++++++++++++++++++++++++------- fs/bcachefs/fs.c | 15 ++++++++---- fs/bcachefs/io_write.c | 21 ++++++++++++++++ fs/bcachefs/journal_io.c | 2 +- fs/bcachefs/namei.c | 3 +++ fs/bcachefs/sb-downgrade.c | 4 +++ fs/bcachefs/sb-errors_format.h | 13 +++++++--- fs/bcachefs/sb-members.c | 6 +++-- fs/bcachefs/sb-members.h | 13 ++++++---- fs/bcachefs/subvolume.c | 5 ++-- fs/bcachefs/super.c | 46 ++++++++++++++++++++-------------- fs/bcachefs/xattr_format.h | 8 +++++- 20 files changed, 219 insertions(+), 91 deletions(-)