From: Marc-André Lureau <marcandre.lur...@redhat.com> Use qemu_write_full() instead of open-coding a write loop.
Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> Reviewed-by: Daniel P. Berrangé <berra...@redhat.com> Message-Id: <20220420132624.2439741-36-marcandre.lur...@redhat.com> --- util/compatfd.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/util/compatfd.c b/util/compatfd.c index ab810c42a927..55b6e0b7fb27 100644 --- a/util/compatfd.c +++ b/util/compatfd.c @@ -42,25 +42,11 @@ static void *sigwait_compat(void *opaque) } } else { struct qemu_signalfd_siginfo buffer; - size_t offset = 0; - memset(&buffer, 0, sizeof(buffer)); buffer.ssi_signo = sig; - while (offset < sizeof(buffer)) { - ssize_t len; - - len = write(info->fd, (char *)&buffer + offset, - sizeof(buffer) - offset); - if (len == -1 && errno == EINTR) { - continue; - } - - if (len <= 0) { - return NULL; - } - - offset += len; + if (qemu_write_full(info->fd, &buffer, sizeof(buffer)) != sizeof(buffer)) { + return NULL; } } } -- 2.36.0