Currently store_queue_request_local returns success when an open fails, change this to SD_RES_EIO to indicate failure. It might make sense to make the failure more specific, but this at least fixes the bug for now.
Signed-off-by: Christoph Hellwig <[email protected]> Index: sheepdog/sheep/store.c =================================================================== --- sheepdog.orig/sheep/store.c 2011-11-10 18:56:50.532796327 +0100 +++ sheepdog/sheep/store.c 2011-11-10 18:57:46.735797654 +0100 @@ -597,8 +597,10 @@ static int store_queue_request_local(str else fd = ob_open(epoch, oid, 0, &ret); - if (fd < 0) + if (fd < 0) { + ret = SD_RES_EIO; goto out; + } if (opcode != SD_OP_CREATE_AND_WRITE_OBJ) break; -- sheepdog mailing list [email protected] http://lists.wpkg.org/mailman/listinfo/sheepdog
