aboutsummaryrefslogtreecommitdiff
path: root/util/event_notifier-posix.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/event_notifier-posix.c')
-rw-r--r--util/event_notifier-posix.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/util/event_notifier-posix.c b/util/event_notifier-posix.c
index 76420c5..83fdbb9 100644
--- a/util/event_notifier-posix.c
+++ b/util/event_notifier-posix.c
@@ -11,6 +11,7 @@
*/
#include "qemu/osdep.h"
+#include "qapi/error.h"
#include "qemu/cutils.h"
#include "qemu/event_notifier.h"
#include "qemu/main-loop.h"
@@ -36,6 +37,7 @@ int event_notifier_init(EventNotifier *e, int active)
{
int fds[2];
int ret;
+ Error *local_err = NULL;
#ifdef CONFIG_EVENTFD
ret = eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC);
@@ -52,11 +54,11 @@ int event_notifier_init(EventNotifier *e, int active)
if (!g_unix_open_pipe(fds, FD_CLOEXEC, NULL)) {
return -errno;
}
- if (!g_unix_set_fd_nonblocking(fds[0], true, NULL)) {
+ if (!qemu_set_blocking(fds[0], false, &local_err)) {
ret = -errno;
goto fail;
}
- if (!g_unix_set_fd_nonblocking(fds[1], true, NULL)) {
+ if (!qemu_set_blocking(fds[1], false, &local_err)) {
ret = -errno;
goto fail;
}
@@ -70,6 +72,7 @@ int event_notifier_init(EventNotifier *e, int active)
return 0;
fail:
+ error_report_err(local_err);
close(fds[0]);
close(fds[1]);
return ret;