mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-09 06:43:09 +00:00
bcachefs: Fix a deadlock
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
cf0517af15
commit
34b8e55276
@ -1550,7 +1550,13 @@ void bch2_btree_insert_node(struct btree_update *as, struct btree *b,
|
||||
|
||||
btree_node_interior_verify(b);
|
||||
|
||||
bch2_foreground_maybe_merge(c, iter, b->level, flags);
|
||||
/*
|
||||
* when called from the btree_split path the new nodes aren't added to
|
||||
* the btree iterator yet, so the merge path's unlock/wait/relock dance
|
||||
* won't work:
|
||||
*/
|
||||
bch2_foreground_maybe_merge(c, iter, b->level,
|
||||
flags|BTREE_INSERT_NOUNLOCK);
|
||||
return;
|
||||
split:
|
||||
btree_split(as, b, iter, keys, flags);
|
||||
|
Loading…
Reference in New Issue
Block a user