diff options
| author | Kent Overstreet <kent.overstreet@gmail.com> | 2020-05-25 14:57:06 -0400 |
|---|---|---|
| committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:08:40 -0400 |
| commit | 00b8ccf7074fddb5607a26673f331ceac2ecd319 (patch) | |
| tree | 2d8468865754bd7075b2370706423c4fcf70b450 /fs/bcachefs/bcachefs.h | |
| parent | c823c3390bd2f325f78bab493f84ea8a84f5ddc2 (diff) | |
| download | linux-00b8ccf7074fddb5607a26673f331ceac2ecd319.tar.gz linux-00b8ccf7074fddb5607a26673f331ceac2ecd319.tar.bz2 linux-00b8ccf7074fddb5607a26673f331ceac2ecd319.zip | |
bcachefs: Interior btree updates are now fully transactional
We now update the alloc info (bucket sector counts) atomically with
journalling the update to the interior btree nodes, and we also set new
btree roots atomically with the journalled part of the btree update.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/bcachefs.h')
| -rw-r--r-- | fs/bcachefs/bcachefs.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/bcachefs/bcachefs.h b/fs/bcachefs/bcachefs.h index 069a3c416bc5..e12946d686dd 100644 --- a/fs/bcachefs/bcachefs.h +++ b/fs/bcachefs/bcachefs.h @@ -603,13 +603,10 @@ struct bch_fs { struct bio_set btree_bio; struct btree_root btree_roots[BTREE_ID_NR]; - bool btree_roots_dirty; struct mutex btree_root_lock; struct btree_cache btree_cache; - mempool_t btree_reserve_pool; - /* * Cache of allocated btree nodes - if we allocate a btree node and * don't use it, if we free it that space can't be reused until going @@ -627,6 +624,9 @@ struct bch_fs { struct mutex btree_interior_update_lock; struct closure_waitlist btree_interior_update_wait; + struct workqueue_struct *btree_interior_update_worker; + struct work_struct btree_interior_update_work; + mempool_t btree_iters_pool; struct workqueue_struct *wq; |
