diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2022-09-28 01:57:34 +0300 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-23 00:09:43 +0300 |
commit | 1f0f731ffef13bde3b2cd5a439c886d94d2bb3cc (patch) | |
tree | 59ae4ae9302d4dffef9ead096f338c6808f8ba02 /fs/bcachefs/btree_update_interior.h | |
parent | 969576ecaeb9b36250f0e099424713e95ca6d730 (diff) | |
download | linux-1f0f731ffef13bde3b2cd5a439c886d94d2bb3cc.tar.xz |
bcachefs: Btree splits now only take the locks they need
Previously, bch2_btree_update_start() would always take all intent
locks, all the way up to the root.
We've finally got data from users where this became a scalability issue
- so, this patch fixes bch2_btree_update_start() to only take the locks
we need.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/btree_update_interior.h')
-rw-r--r-- | fs/bcachefs/btree_update_interior.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/bcachefs/btree_update_interior.h b/fs/bcachefs/btree_update_interior.h index 7af810df8348..dabe81596544 100644 --- a/fs/bcachefs/btree_update_interior.h +++ b/fs/bcachefs/btree_update_interior.h @@ -52,6 +52,7 @@ struct btree_update { unsigned took_gc_lock:1; enum btree_id btree_id; + unsigned update_level; struct disk_reservation disk_res; struct journal_preres journal_preres; |