From: Kent Overstreet <kent.overstreet@linux.dev>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-bcachefs@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [GIT PULL] bcachefs fixes for 6.9-rc3
Date: Mon, 1 Apr 2024 18:14:33 -0400 [thread overview]
Message-ID: <wwkqc7ugdewzde6gdej5bi6kb3bsvoqzqkexxejcl64d5r3pow@46qmmqq5wx4y> (raw)
Hi Linus, some bcachefs fixes for you.
Cheers,
Kent
The following changes since commit 39cd87c4eb2b893354f3b850f916353f2658ae6f:
Linux 6.9-rc2 (2024-03-31 14:32:39 -0700)
are available in the Git repository at:
https://evilpiepirate.org/git/bcachefs.git tags/bcachefs-2024-04-01
for you to fetch changes up to b3c7fd35c03c17a950737fb56a06b730a7962d28:
bcachefs: On emergency shutdown, print out current journal sequence number (2024-04-01 01:07:24 -0400)
----------------------------------------------------------------
bcachefs fixes for 6.9-rc3
Lots of fixes for situations with extreme filesystem damage. One fix
("Fix journal pins in btree write buffer") applicable to normal usage;
also a dio performance fix.
New repair/construction code is in the final stages, should be ready in
about a week. Anyone that lost btree interior nodes (or a variety of
other damage) as a result of the splitbrain bug will be able to repair
then.
----------------------------------------------------------------
Hongbo Li (1):
bcachefs: fix trans->mem realloc in __bch2_trans_kmalloc
Kent Overstreet (29):
bcachefs: Fix assert in bch2_backpointer_invalid()
bcachefs: Fix journal pins in btree write buffer
bcachefs: fix mount error path
bcachefs: Add an assertion for trying to evict btree root
bcachefs: Move snapshot table size to struct snapshot_table
bcachefs: Add checks for invalid snapshot IDs
bcachefs: Don't do extent merging before journal replay is finished
bcachefs: btree_and_journal_iter now respects trans->journal_replay_not_finished
bcachefs: Be careful about btree node splits during journal replay
bcachefs: Improved topology repair checks
bcachefs: Check btree ptr min_key in .invalid
bcachefs: Fix btree node keys accounting in topology repair path
bcachefs: Fix use after free in bch2_check_fix_ptrs()
bcachefs: Fix repair path for missing indirect extents
bcachefs: Fix use after free in check_root_trans()
bcachefs: Kill bch2_bkey_ptr_data_type()
bcachefs: Fix bch2_btree_increase_depth()
bcachefs: fix backpointer for missing alloc key msg
bcachefs: Split out recovery_passes.c
bcachefs: Add error messages to logged ops fns
bcachefs: Resume logged ops after fsck
bcachefs: Flush journal immediately after replay if we did early repair
bcachefs: Ensure bch_sb_field_ext always exists
bcachefs: bch2_run_explicit_recovery_pass_persistent()
bcachefs: Improve -o norecovery; opts.recovery_pass_limit
bcachefs: Logged op errors should be ignored
bcachefs: Fix remove_dirent()
bcachefs: Fix overlapping extent repair
bcachefs: On emergency shutdown, print out current journal sequence number
Thomas Bertschinger (1):
bcachefs: fix misplaced newline in __bch2_inode_unpacked_to_text()
zhuxiaohui (1):
bcachefs: add REQ_SYNC and REQ_IDLE in write dio
fs/bcachefs/Makefile | 1 +
fs/bcachefs/backpointers.c | 13 +-
fs/bcachefs/backpointers.h | 32 ++-
fs/bcachefs/bcachefs.h | 3 +-
fs/bcachefs/bset.c | 14 +-
fs/bcachefs/bset.h | 2 +
fs/bcachefs/btree_cache.c | 5 +-
fs/bcachefs/btree_gc.c | 206 ++++----------
fs/bcachefs/btree_io.c | 3 +-
fs/bcachefs/btree_iter.c | 52 +++-
fs/bcachefs/btree_journal_iter.c | 29 +-
fs/bcachefs/btree_journal_iter.h | 4 +-
fs/bcachefs/btree_trans_commit.c | 2 +-
fs/bcachefs/btree_update.c | 6 +
fs/bcachefs/btree_update_interior.c | 151 +++++++---
fs/bcachefs/btree_update_interior.h | 2 +
fs/bcachefs/btree_write_buffer.c | 14 +
fs/bcachefs/buckets.c | 12 +-
fs/bcachefs/chardev.c | 2 +-
fs/bcachefs/data_update.c | 9 +
fs/bcachefs/errcode.h | 3 +-
fs/bcachefs/error.c | 6 +-
fs/bcachefs/error.h | 6 +
fs/bcachefs/extents.c | 9 +-
fs/bcachefs/extents.h | 24 --
fs/bcachefs/fs-io-direct.c | 4 +-
fs/bcachefs/fs.c | 1 +
fs/bcachefs/fsck.c | 37 ++-
fs/bcachefs/inode.c | 2 +-
fs/bcachefs/io_misc.c | 2 +
fs/bcachefs/logged_ops.c | 7 +-
fs/bcachefs/opts.c | 4 +
fs/bcachefs/opts.h | 7 +-
fs/bcachefs/recovery.c | 304 +++------------------
fs/bcachefs/recovery.h | 32 +--
fs/bcachefs/recovery_passes.c | 225 +++++++++++++++
fs/bcachefs/recovery_passes.h | 17 ++
.../{recovery_types.h => recovery_passes_types.h} | 9 +-
fs/bcachefs/reflink.c | 3 +-
fs/bcachefs/sb-downgrade.c | 2 +-
fs/bcachefs/sb-errors_types.h | 4 +-
fs/bcachefs/snapshot.c | 35 ++-
fs/bcachefs/snapshot.h | 63 ++---
fs/bcachefs/subvolume.c | 72 +++++
fs/bcachefs/subvolume.h | 3 +
fs/bcachefs/subvolume_types.h | 2 +
fs/bcachefs/super-io.c | 2 +-
fs/bcachefs/super.c | 13 +-
48 files changed, 814 insertions(+), 646 deletions(-)
create mode 100644 fs/bcachefs/recovery_passes.c
create mode 100644 fs/bcachefs/recovery_passes.h
rename fs/bcachefs/{recovery_types.h => recovery_passes_types.h} (94%)
next reply other threads:[~2024-04-01 22:14 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-01 22:14 Kent Overstreet [this message]
2024-04-02 20:06 ` [GIT PULL] bcachefs fixes for 6.9-rc3 pr-tracker-bot
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=wwkqc7ugdewzde6gdej5bi6kb3bsvoqzqkexxejcl64d5r3pow@46qmmqq5wx4y \
--to=kent.overstreet@linux.dev \
--cc=linux-bcachefs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).