bch2_trans_begin() invalidates all iterators, until they're revalidated
by calling peek() or traverse().
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
}
trans_for_each_path(trans, path) {
+ path->should_be_locked = false;
+
/*
* XXX: we probably shouldn't be doing this if the transaction
* was restarted, but currently we still overflow transaction
if (!path->ref && !path->preserve)
__bch2_path_free(trans, path);
else
- path->preserve = path->should_be_locked = false;
+ path->preserve = false;
}
bch2_trans_cond_resched(trans);