From f87d72f5c5bff0837d409a56bd34f439a90119ca Mon Sep 17 00:00:00 2001 From: Gal Hammer Date: Sun, 14 Jan 2018 12:06:54 +0200 Subject: qemu: add a cleanup callback function to EventNotifier Adding a cleanup callback function to the EventNotifier struct which allows users to execute event_notifier_cleanup in a different context. Signed-off-by: Gal Hammer Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- util/event_notifier-posix.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'util/event_notifier-posix.c') diff --git a/util/event_notifier-posix.c b/util/event_notifier-posix.c index 73c4046b58..652566634a 100644 --- a/util/event_notifier-posix.c +++ b/util/event_notifier-posix.c @@ -29,6 +29,7 @@ void event_notifier_init_fd(EventNotifier *e, int fd) { e->rfd = fd; e->wfd = fd; + e->cleanup = NULL; } #endif @@ -65,6 +66,7 @@ int event_notifier_init(EventNotifier *e, int active) e->rfd = fds[0]; e->wfd = fds[1]; } + e->cleanup = NULL; if (active) { event_notifier_set(e); } @@ -80,10 +82,11 @@ void event_notifier_cleanup(EventNotifier *e) { if (e->rfd != e->wfd) { close(e->rfd); - e->rfd = -1; } close(e->wfd); + e->rfd = -1; e->wfd = -1; + e->cleanup = NULL; } int event_notifier_get_fd(const EventNotifier *e) -- cgit v1.2.3