Loading fs/bcachefs/btree_update.h +2 −3 Original line number Diff line number Diff line Loading @@ -170,8 +170,7 @@ bch2_trans_jset_entry_alloc(struct btree_trans *trans, unsigned u64s) int bch2_btree_insert_clone_trans(struct btree_trans *, enum btree_id, struct bkey_i *); int bch2_btree_write_buffer_insert_err(struct btree_trans *, enum btree_id, struct bkey_i *); int bch2_btree_write_buffer_insert_err(struct bch_fs *, enum btree_id, struct bkey_i *); static inline int __must_check bch2_trans_update_buffered(struct btree_trans *trans, enum btree_id btree, Loading @@ -182,7 +181,7 @@ static inline int __must_check bch2_trans_update_buffered(struct btree_trans *tr EBUG_ON(k->k.u64s > BTREE_WRITE_BUFERED_U64s_MAX); if (unlikely(!btree_type_uses_write_buffer(btree))) { int ret = bch2_btree_write_buffer_insert_err(trans, btree, k); int ret = bch2_btree_write_buffer_insert_err(trans->c, btree, k); dump_stack(); return ret; } Loading fs/bcachefs/btree_write_buffer.c +2 −3 Original line number Diff line number Diff line Loading @@ -267,10 +267,9 @@ static void move_keys_from_inc_to_flushing(struct btree_write_buffer *wb) BUG_ON(wb->sorted.size < wb->flushing.keys.nr); } int bch2_btree_write_buffer_insert_err(struct btree_trans *trans, int bch2_btree_write_buffer_insert_err(struct bch_fs *c, enum btree_id btree, struct bkey_i *k) { struct bch_fs *c = trans->c; struct printbuf buf = PRINTBUF; prt_printf(&buf, "attempting to do write buffer update on non wb btree="); Loading Loading @@ -332,7 +331,7 @@ static int bch2_btree_write_buffer_flush_locked(struct btree_trans *trans) struct btree_write_buffered_key *k = &wb->flushing.keys.data[i->idx]; if (unlikely(!btree_type_uses_write_buffer(k->btree))) { ret = bch2_btree_write_buffer_insert_err(trans, k->btree, &k->k); ret = bch2_btree_write_buffer_insert_err(trans->c, k->btree, &k->k); goto err; } Loading fs/bcachefs/btree_write_buffer.h +6 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,12 @@ static inline int bch2_journal_key_to_wb(struct bch_fs *c, struct journal_keys_to_wb *dst, enum btree_id btree, struct bkey_i *k) { if (unlikely(!btree_type_uses_write_buffer(btree))) { int ret = bch2_btree_write_buffer_insert_err(c, btree, k); dump_stack(); return ret; } EBUG_ON(!dst->seq); return k->k.type == KEY_TYPE_accounting Loading Loading
fs/bcachefs/btree_update.h +2 −3 Original line number Diff line number Diff line Loading @@ -170,8 +170,7 @@ bch2_trans_jset_entry_alloc(struct btree_trans *trans, unsigned u64s) int bch2_btree_insert_clone_trans(struct btree_trans *, enum btree_id, struct bkey_i *); int bch2_btree_write_buffer_insert_err(struct btree_trans *, enum btree_id, struct bkey_i *); int bch2_btree_write_buffer_insert_err(struct bch_fs *, enum btree_id, struct bkey_i *); static inline int __must_check bch2_trans_update_buffered(struct btree_trans *trans, enum btree_id btree, Loading @@ -182,7 +181,7 @@ static inline int __must_check bch2_trans_update_buffered(struct btree_trans *tr EBUG_ON(k->k.u64s > BTREE_WRITE_BUFERED_U64s_MAX); if (unlikely(!btree_type_uses_write_buffer(btree))) { int ret = bch2_btree_write_buffer_insert_err(trans, btree, k); int ret = bch2_btree_write_buffer_insert_err(trans->c, btree, k); dump_stack(); return ret; } Loading
fs/bcachefs/btree_write_buffer.c +2 −3 Original line number Diff line number Diff line Loading @@ -267,10 +267,9 @@ static void move_keys_from_inc_to_flushing(struct btree_write_buffer *wb) BUG_ON(wb->sorted.size < wb->flushing.keys.nr); } int bch2_btree_write_buffer_insert_err(struct btree_trans *trans, int bch2_btree_write_buffer_insert_err(struct bch_fs *c, enum btree_id btree, struct bkey_i *k) { struct bch_fs *c = trans->c; struct printbuf buf = PRINTBUF; prt_printf(&buf, "attempting to do write buffer update on non wb btree="); Loading Loading @@ -332,7 +331,7 @@ static int bch2_btree_write_buffer_flush_locked(struct btree_trans *trans) struct btree_write_buffered_key *k = &wb->flushing.keys.data[i->idx]; if (unlikely(!btree_type_uses_write_buffer(k->btree))) { ret = bch2_btree_write_buffer_insert_err(trans, k->btree, &k->k); ret = bch2_btree_write_buffer_insert_err(trans->c, k->btree, &k->k); goto err; } Loading
fs/bcachefs/btree_write_buffer.h +6 −0 Original line number Diff line number Diff line Loading @@ -89,6 +89,12 @@ static inline int bch2_journal_key_to_wb(struct bch_fs *c, struct journal_keys_to_wb *dst, enum btree_id btree, struct bkey_i *k) { if (unlikely(!btree_type_uses_write_buffer(btree))) { int ret = bch2_btree_write_buffer_insert_err(c, btree, k); dump_stack(); return ret; } EBUG_ON(!dst->seq); return k->k.type == KEY_TYPE_accounting Loading