mirror of
https://git.proxmox.com/git/mirror_corosync
synced 2026-02-01 16:02:31 +00:00
Check successful initialization of IPC
Signed-off-by: Jan Friesse <jfriesse@redhat.com> Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com>
This commit is contained in:
parent
f508e23096
commit
89809ec80e
@ -801,14 +801,14 @@ void cs_ipcs_stats_update(void)
|
||||
}
|
||||
}
|
||||
|
||||
void cs_ipcs_service_init(struct corosync_service_engine *service)
|
||||
const char *cs_ipcs_service_init(struct corosync_service_engine *service)
|
||||
{
|
||||
if (service->lib_engine_count == 0) {
|
||||
log_printf (LOGSYS_LEVEL_DEBUG,
|
||||
"NOT Initializing IPC on %s [%d]",
|
||||
cs_ipcs_serv_short_name(service->id),
|
||||
service->id);
|
||||
return;
|
||||
return NULL;
|
||||
}
|
||||
ipcs_mapper[service->id].id = service->id;
|
||||
strcpy(ipcs_mapper[service->id].name, cs_ipcs_serv_short_name(service->id));
|
||||
@ -823,7 +823,12 @@ void cs_ipcs_service_init(struct corosync_service_engine *service)
|
||||
assert(ipcs_mapper[service->id].inst);
|
||||
qb_ipcs_poll_handlers_set(ipcs_mapper[service->id].inst,
|
||||
&corosync_poll_funcs);
|
||||
qb_ipcs_run(ipcs_mapper[service->id].inst);
|
||||
if (qb_ipcs_run(ipcs_mapper[service->id].inst) != 0) {
|
||||
log_printf (LOGSYS_LEVEL_ERROR, "Can't initialize IPC");
|
||||
return "qb_ipcs_run error";
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void cs_ipcs_init(void)
|
||||
|
||||
@ -93,7 +93,7 @@ extern void corosync_recheck_the_q_level(void *data);
|
||||
|
||||
extern void cs_ipcs_init(void);
|
||||
|
||||
extern void cs_ipcs_service_init(struct corosync_service_engine *service);
|
||||
extern const char *cs_ipcs_service_init(struct corosync_service_engine *service);
|
||||
|
||||
extern void cs_ipcs_stats_update(void);
|
||||
|
||||
|
||||
@ -172,7 +172,10 @@ char *corosync_service_link_and_init (
|
||||
|
||||
log_printf (LOGSYS_LEVEL_NOTICE,
|
||||
"Service engine loaded: %s [%d]", service_engine->name, service_engine->id);
|
||||
cs_ipcs_service_init(service_engine);
|
||||
init_result = (char *)cs_ipcs_service_init(service_engine);
|
||||
if (init_result != NULL) {
|
||||
return (init_result);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user