From 7ef2a73a5881323d53453cc3be7261fe1a49af1d Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Mon, 21 Jan 2019 15:32:13 -0500 Subject: bcachefs: Fix check for if extent update is allocating Signed-off-by: Kent Overstreet --- fs/bcachefs/migrate.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'fs/bcachefs/migrate.c') diff --git a/fs/bcachefs/migrate.c b/fs/bcachefs/migrate.c index 63fe8cbb0564..b97a5a8f3910 100644 --- a/fs/bcachefs/migrate.c +++ b/fs/bcachefs/migrate.c @@ -5,6 +5,7 @@ #include "bcachefs.h" #include "btree_update.h" +#include "btree_update_interior.h" #include "buckets.h" #include "extents.h" #include "io.h" @@ -153,6 +154,16 @@ retry: bch2_btree_iter_unlock(&iter); } + /* flush relevant btree updates */ + while (1) { + closure_wait_event(&c->btree_interior_update_wait, + !bch2_btree_interior_updates_nr_pending(c) || + c->btree_roots_dirty); + if (!bch2_btree_interior_updates_nr_pending(c)) + break; + bch2_journal_meta(&c->journal); + } + ret = 0; out: ret = bch2_replicas_gc_end(c, ret); -- cgit v1.2.3