trans->restarted is a positive error code, not the usual negative
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
unsigned long trace_ip)
{
unsigned depth_want = path->level;
- int ret = trans->restarted;
+ int ret = -((int) trans->restarted);
if (unlikely(ret))
goto out;
return b;
}
+/*
+ * XXX
+ * this does not handle transaction restarts from bch2_btree_iter_next_node()
+ * correctly
+ */
#define __for_each_btree_node(_trans, _iter, _btree_id, _start, \
_locks_want, _depth, _flags, _b, _ret) \
for (bch2_trans_node_iter_init((_trans), &(_iter), (_btree_id), \