When the guest writes to the RTC, the write is intercepted and emulated by Xen and the time difference is broadcasted as a TIMEOFFSET ioreq. Emit an RTC_CHANGE QMP event when this happens rather than ignoring it so that something can make use of the information (e.g. the toolstack can persist it between VM starts).
Signed-off-by: Ross Lagerwall <[email protected]> --- hw/xen/xen-hvm-common.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/xen/xen-hvm-common.c b/hw/xen/xen-hvm-common.c index 59c73dfaeb59..9b539f5c5c56 100644 --- a/hw/xen/xen-hvm-common.c +++ b/hw/xen/xen-hvm-common.c @@ -4,6 +4,7 @@ #include "qemu/error-report.h" #include "qemu/target-info.h" #include "qapi/error.h" +#include "qapi/qapi-events-misc.h" #include "exec/target_page.h" #include "trace.h" @@ -471,6 +472,7 @@ static void handle_ioreq(XenIOState *state, ioreq_t *req) cpu_ioreq_move(req); break; case IOREQ_TYPE_TIMEOFFSET: + qapi_event_send_rtc_change((int64_t)req->data, NULL); break; case IOREQ_TYPE_INVALIDATE: xen_invalidate_map_cache(); -- 2.52.0
