[sheepdog] [PATCH] sheep: not to make request done when gateway request needs retrying
levin li
levin108 at gmail.com
Thu May 31 10:52:04 CEST 2012
From: levin li <xingke.lwp at taobao.com>
Signed-off-by: levin li <xingke.lwp at taobao.com>
---
sheep/sdnet.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/sheep/sdnet.c b/sheep/sdnet.c
index 76b0744..fa2cd58 100644
--- a/sheep/sdnet.c
+++ b/sheep/sdnet.c
@@ -160,7 +160,8 @@ static void io_op_done(struct work *work)
if (req->rp.epoch > sys->epoch &&
req->rp.result == SD_RES_OLD_NODE_VER) {
list_add_tail(&req->request_list,
- &sys->wait_rw_queue);
+ &sys->wait_rw_queue);
+ goto done;
} else
goto retry;
}
@@ -196,7 +197,7 @@ retry:
req->vnodes = get_vnode_info();
setup_access_to_local_objects(req);
process_io_request(req);
-
+done:
resume_pending_requests();
resume_recovery_work();
}
--
1.7.10
More information about the sheepdog
mailing list