|
Revision tags: v6.15, v6.15-rc7, v6.15-rc6, v6.15-rc5, v6.15-rc4, v6.15-rc3, v6.15-rc2, v6.15-rc1, v6.14 |
|
| #
28aa859b |
| 20-Mar-2025 |
Kent Overstreet <[email protected]> |
bcachefs: kmsan asserts
Catching these early makes them a lot easier to track down.
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
4a4000b9 |
| 18-Mar-2025 |
Kent Overstreet <[email protected]> |
bcachefs: Kill JOURNAL_ERRORS()
Convert these to standard error codes, which means we can pass them outside the journal code, they're easier to pass to tracepoints, etc.
Signed-off-by: Kent Overstr
bcachefs: Kill JOURNAL_ERRORS()
Convert these to standard error codes, which means we can pass them outside the journal code, they're easier to pass to tracepoints, etc.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
|
Revision tags: v6.14-rc7, v6.14-rc6, v6.14-rc5, v6.14-rc4, v6.14-rc3 |
|
| #
65bc7688 |
| 11-Feb-2025 |
Kent Overstreet <[email protected]> |
bcachefs: rework bch2_trans_commit_run_triggers()
Signed-off-by: Kent Overstreet <[email protected]>
|
|
Revision tags: v6.14-rc2, v6.14-rc1, v6.13, v6.13-rc7, v6.13-rc6, v6.13-rc5, v6.13-rc4, v6.13-rc3, v6.13-rc2, v6.13-rc1, v6.12, v6.12-rc7, v6.12-rc6, v6.12-rc5, v6.12-rc4, v6.12-rc3, v6.12-rc2, v6.12-rc1 |
|
| #
9cf6b84b |
| 24-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: CONFIG_BCACHEFS_INJECT_TRANSACTION_RESTARTS
Incorrectly handled transaction restarts can be a source of heisenbugs; add a mode where we randomly inject them to shake them out.
Signed-off-
bcachefs: CONFIG_BCACHEFS_INJECT_TRANSACTION_RESTARTS
Incorrectly handled transaction restarts can be a source of heisenbugs; add a mode where we randomly inject them to shake them out.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
2c5d8a83 |
| 21-Jan-2025 |
Kent Overstreet <[email protected]> |
bcachefs: "Journal stuck" timeout now takes into account device latency
If a block device (e.g. your typical consumer SSD) is taking multiple seconds for IOs (typically flushes), we don't want to em
bcachefs: "Journal stuck" timeout now takes into account device latency
If a block device (e.g. your typical consumer SSD) is taking multiple seconds for IOs (typically flushes), we don't want to emit the "journal stuck" message prematurely.
Also, make sure to drop the btree_trans srcu lock if we're blocking for more than a second.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
0971a72c |
| 24-Dec-2024 |
Kent Overstreet <[email protected]> |
bcachefs: bch2_trans_unlock_write()
New helper for dropping all write locks; which is distinct from the helper the transaction commit path uses, which is faster and only touches updates.
Signed-off
bcachefs: bch2_trans_unlock_write()
New helper for dropping all write locks; which is distinct from the helper the transaction commit path uses, which is faster and only touches updates.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
bc6fce78 |
| 21-Dec-2024 |
Kent Overstreet <[email protected]> |
bcachefs: bch2_btree_node_write_trans()
Avoiding screwing up path->lock_seq.
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
92e31d42 |
| 12-Dec-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Don't run overwrite triggers before insert
This breaks when the trigger is inserting updates for the same btree, as the inode trigger now does.
Signed-off-by: Kent Overstreet <kent.overst
bcachefs: Don't run overwrite triggers before insert
This breaks when the trigger is inserting updates for the same btree, as the inode trigger now does.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
60558d55 |
| 08-Dec-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Plumb bkey_validate_context to journal_entry_validate
This lets us print the exact location in the journal if it was found in the journal, or correctly print if it was found in the superbl
bcachefs: Plumb bkey_validate_context to journal_entry_validate
This lets us print the exact location in the journal if it was found in the journal, or correctly print if it was found in the superblock.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
a6f4794f |
| 27-Nov-2024 |
Kent Overstreet <[email protected]> |
bcachefs: struct bkey_validate_context
Add a new parameter to bkey validate functions, and use it to improve invalid bkey error messages: we can now print the btree and depth it came from, or if it
bcachefs: struct bkey_validate_context
Add a new parameter to bkey validate functions, and use it to improve invalid bkey error messages: we can now print the btree and depth it came from, or if it came from the journal, or is a btree root.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
b3188820 |
| 27-Oct-2024 |
Kent Overstreet <[email protected]> |
bcachefs: bch2_trans_verify_not_unlocked_or_in_restart()
Fold two asserts into one.
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
a34b0264 |
| 31-Oct-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Kill BCH_TRANS_COMMIT_lazy_rw
We unconditionally go read-write, if we're going to do so, before journal replay: lazy_rw is obsolete.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.
bcachefs: Kill BCH_TRANS_COMMIT_lazy_rw
We unconditionally go read-write, if we're going to do so, before journal replay: lazy_rw is obsolete.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
cc944fbe |
| 31-Oct-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Add assert for use of journal replay keys for updates
The journal replay keys mechanism can only be used for updates in early recovery, when still single threaded.
Add some asserts to mak
bcachefs: Add assert for use of journal replay keys for updates
The journal replay keys mechanism can only be used for updates in early recovery, when still single threaded.
Add some asserts to make sure we never accidentally use it elsewhere.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
4e1c6ac0 |
| 24-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: kill btree_trans_restart_nounlock()
Redundant, the normal btree_trans_restart() doesn't unlock.
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
c07beca4 |
| 01-Oct-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Pull disk accounting hooks out of trans_commit.c
Also, fix a minor bug in the revert path, where we weren't checking the journal entry type correctly.
Signed-off-by: Kent Overstreet <kent
bcachefs: Pull disk accounting hooks out of trans_commit.c
Also, fix a minor bug in the revert path, where we weren't checking the journal entry type correctly.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
d2878660 |
| 03-Oct-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Fix trans_commit disk accounting revert
We only are applying JSET_ENTRY_TYPE_write_buffer_keys, revert path was missed.
Fixes: a3581ca35d2b ("bcachefs: Fix BCH_TRANS_COMMIT_skip_accountin
bcachefs: Fix trans_commit disk accounting revert
We only are applying JSET_ENTRY_TYPE_write_buffer_keys, revert path was missed.
Fixes: a3581ca35d2b ("bcachefs: Fix BCH_TRANS_COMMIT_skip_accounting_apply") Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
a3581ca3 |
| 26-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Fix BCH_TRANS_COMMIT_skip_accounting_apply
This was added to avoid double-counting accounting keys in journal replay. But applied incorrectly (easily done since it applies to the transacti
bcachefs: Fix BCH_TRANS_COMMIT_skip_accounting_apply
This was added to avoid double-counting accounting keys in journal replay. But applied incorrectly (easily done since it applies to the transaction commit, not a particular update), it leads to skipping in-mem accounting for real accounting updates, and failure to give them a version number - which leads to journal replay becoming very confused the next time around.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
cf49f8a8 |
| 26-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: rename version -> bversion
give bversions a more distinct name, to aid in grepping
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
7c980a43 |
| 26-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Move transaction commit path validation to as late as possible
In order to check for accounting keys with version=0, we need to run validation after they've been assigned version numbers.
bcachefs: Move transaction commit path validation to as late as possible
In order to check for accounting keys with version=0, we need to run validation after they've been assigned version numbers.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
1e0272ef |
| 25-Sep-2024 |
Kent Overstreet <[email protected]> |
bcachefs: bch_accounting_mode
Minor refactoring - replace multiple bool arguments with an enum; prep work for fixing a bug in accounting read.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.
bcachefs: bch_accounting_mode
Minor refactoring - replace multiple bool arguments with an enum; prep work for fixing a bug in accounting read.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
|
Revision tags: v6.11, v6.11-rc7, v6.11-rc6, v6.11-rc5, v6.11-rc4 |
|
| #
5935bf33 |
| 14-Aug-2024 |
Alan Huang <[email protected]> |
bcachefs: Remove unused parameter
iter here is unused, remove it.
Signed-off-by: Alan Huang <[email protected]> Signed-off-by: Kent Overstreet <[email protected]>
|
| #
5132b99b |
| 12-Aug-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Kill __bch2_accounting_mem_mod()
The next patch will be adding a disk accounting counter type which is not kept in the in-memory eytzinger tree.
As prep, fold __bch2_accounting_mem_mod()
bcachefs: Kill __bch2_accounting_mem_mod()
The next patch will be adding a disk accounting counter type which is not kept in the in-memory eytzinger tree.
As prep, fold __bch2_accounting_mem_mod() into bch2_accounting_mem_mod_locked() so that we can check for that counter type and bail out without calling bpos_to_disk_accounting_pos() twice.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
| #
d97de0d0 |
| 13-Aug-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Make bkey_fsck_err() a wrapper around fsck_err()
bkey_fsck_err() was added as an interface that looks like fsck_err(), but previously all it did was ensure that the appropriate error count
bcachefs: Make bkey_fsck_err() a wrapper around fsck_err()
bkey_fsck_err() was added as an interface that looks like fsck_err(), but previously all it did was ensure that the appropriate error counter was incremented in the superblock.
This is a cleanup and bugfix patch that converts it to a wrapper around fsck_err(). This is needed to fix an issue with the upgrade path to disk_accounting_v3, where the "silent fix" error list now includes bkey_fsck errors; fsck_err() handles this in a unified way, and since we need to change printing of bkey fsck errors from the caller to the inner bkey_fsck_err() calls, this ends up being a pretty big change.
Als,, rename .invalid() methods to .validate(), for clarity, while we're changing the function signature anyways (to drop the printbuf argument).
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|
|
Revision tags: v6.11-rc3 |
|
| #
06a8693b |
| 10-Aug-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Add a time_stat for blocked on key cache flush
Signed-off-by: Kent Overstreet <[email protected]>
|
| #
7254555c |
| 10-Aug-2024 |
Kent Overstreet <[email protected]> |
bcachefs: Add hysteresis to waiting on btree key cache flush
This helps ensure key cache reclaim isn't contending with threads waiting for the key cache to be helped, and fixes a severe performance
bcachefs: Add hysteresis to waiting on btree key cache flush
This helps ensure key cache reclaim isn't contending with threads waiting for the key cache to be helped, and fixes a severe performance bug.
Signed-off-by: Kent Overstreet <[email protected]>
show more ...
|