Signed-off-by: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> --- collie/group.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/collie/group.c b/collie/group.c index 01b51f8..7dbbe9e 100644 --- a/collie/group.c +++ b/collie/group.c @@ -804,6 +804,8 @@ static void vdi_op(struct vdi_op_message *msg) case SD_OP_MAKE_FS: ret = make_super_object(&msg->req); break; + case SD_OP_SHUTDOWN: + break; default: ret = SD_RES_SYSTEM_ERROR; eprintf("opcode %d is not implemented\n", hdr->opcode); @@ -862,6 +864,8 @@ static void vdi_op_done(struct vdi_op_message *msg) eprintf("%d\n", sys->nr_sobjs); } + case SD_OP_SHUTDOWN: + sys->status = SD_STATUS_SHUTDOWN; break; default: eprintf("unknown operation %d\n", hdr->opcode); @@ -1106,6 +1110,9 @@ static void sd_confch(cpg_handle_t handle, const struct cpg_name *group_name, member_list[i].reason); } + if (sys->status & SD_STATUS_SHUTDOWN_MASK || sys->status & SD_STATUS_ERROR_MASK) + return; + w = zalloc(sizeof(*w)); if (!w) return; -- 1.5.6.5 |