diff --git a/src/shared/reboot-util.c b/src/shared/reboot-util.c index 10d49ba63a..7fa3ff98b6 100644 --- a/src/shared/reboot-util.c +++ b/src/shared/reboot-util.c @@ -122,9 +122,9 @@ int shall_restore_state(void) { static int xen_kexec_loaded(void) { #if HAVE_XENCTRL - size_t size; _cleanup_close_ int privcmd_fd = -1, buf_fd = -1; - void *buffer; + xen_kexec_status_t *buffer; + size_t size; int r; if (access("/proc/xen", F_OK) < 0) { @@ -149,7 +149,7 @@ static int xen_kexec_loaded(void) { if (buffer == MAP_FAILED) return log_debug_errno(errno, "Cannot allocate buffer for hypercall: %m"); - *(xen_kexec_status_t*) buffer = (xen_kexec_status_t) { + *buffer = (xen_kexec_status_t) { .type = KEXEC_TYPE_DEFAULT, };