@@ -71,7 +71,7 @@ static void sigfd_handler(void *opaque)
}
}
-static int qemu_signal_init(void)
+static int qemu_signal_init(Error **errp)
{
int sigfd;
sigset_t set;
@@ -96,7 +96,7 @@ static int qemu_signal_init(void)
sigdelset(&set, SIG_IPI);
sigfd = qemu_signalfd(&set);
if (sigfd == -1) {
- fprintf(stderr, "failed to create signalfd\n");
+ error_setg_errno(errp, errno, "failed to create signalfd");
return -errno;
}
@@ -109,7 +109,7 @@ static int qemu_signal_init(void)
#else /* _WIN32 */
-static int qemu_signal_init(void)
+static int qemu_signal_init(Error **errp)
{
return 0;
}
@@ -148,8 +148,9 @@ int qemu_init_main_loop(Error **errp)
init_clocks();
- ret = qemu_signal_init();
+ ret = qemu_signal_init(&local_error);
if (ret) {
+ error_propagate(errp, local_error);
return ret;
}
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> --- main-loop.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)