[Sheepdog] [PATCH] sheep: resume pending I/O requests after setting next recovery
MORITA Kazutaka
morita.kazutaka at lab.ntt.co.jp
Mon Dec 12 12:31:10 CET 2011
We need to set recovery_work before calling resume_pending_requests()
because sheep checks the value to decide whether object recovery is
running or not.
Signed-off-by: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp>
---
sheep/store.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/sheep/store.c b/sheep/store.c
index de952d4..92ba8ec 100644
--- a/sheep/store.c
+++ b/sheep/store.c
@@ -1562,7 +1562,6 @@ static void recover_done(struct work *work, int idx)
recovering_work = NULL;
sys->recovered_epoch = rw->epoch;
- resume_pending_requests();
free(rw->oids);
free(rw);
@@ -1574,6 +1573,8 @@ static void recover_done(struct work *work, int idx)
recovering_work = rw;
queue_work(sys->recovery_wqueue, &rw->work);
}
+
+ resume_pending_requests();
}
static int __fill_obj_list(struct sheepdog_node_list_entry *e, uint32_t epoch,
--
1.7.2.5
More information about the sheepdog
mailing list