diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2018-12-12 06:21:55 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2018-12-12 06:25:37 -0500 |
commit | a10a41fa2b1a917b0f3b34d20175867f968b2d12 (patch) | |
tree | b61aa3e0912c2a6928356aeb5273fb528b4f21ba /libbcachefs/btree_types.h | |
parent | 0c7db4eca3e6519043c10288cb41f8a0ee634a0b (diff) |
Update bcachefs sources to f7670cba39 bcachefs: Fix for building in userspace
Diffstat (limited to 'libbcachefs/btree_types.h')
-rw-r--r-- | libbcachefs/btree_types.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/libbcachefs/btree_types.h b/libbcachefs/btree_types.h index a91a37e4..0af2a7dc 100644 --- a/libbcachefs/btree_types.h +++ b/libbcachefs/btree_types.h @@ -244,9 +244,28 @@ struct btree_iter { #define BTREE_ITER_MAX 8 +struct deferred_update { + struct journal_entry_pin journal; + + spinlock_t lock; + unsigned gen; + + u8 allocated_u64s; + enum btree_id btree_id; + + /* must be last: */ + struct bkey_i k; +}; + struct btree_insert_entry { - struct btree_iter *iter; - struct bkey_i *k; + struct bkey_i *k; + + union { + struct btree_iter *iter; + struct deferred_update *d; + }; + + bool deferred; }; struct btree_trans { @@ -438,6 +457,7 @@ static inline bool btree_node_type_needs_gc(enum btree_node_type type) switch (type) { case BKEY_TYPE_BTREE: case BKEY_TYPE_EXTENTS: + case BKEY_TYPE_INODES: case BKEY_TYPE_EC: return true; default: |