summaryrefslogtreecommitdiff
path: root/qmp-commands.hx
diff options
context:
space:
mode:
authorMarcelo Tosatti <mtosatti@redhat.com>2014-06-24 18:55:11 -0300
committerMichael S. Tsirkin <mst@redhat.com>2014-06-29 18:59:35 +0300
commitf2ae8abf1fa003e7ec6ee22cc3871924422a01d0 (patch)
treeb7c7f3bd2345af11289f489b939f544924070de8 /qmp-commands.hx
parentfa118d1f8be40860469e8e23745d0202bdf229ba (diff)
downloadqemu-f2ae8abf1fa003e7ec6ee22cc3871924422a01d0.tar.gz
mc146818rtc: add rtc-reset-reinjection QMP command
It is necessary to reset RTC interrupt reinjection backlog if guest time is synchronized via a different mechanism, such as QGA's guest-set-time command. Failing to do so causes both corrections to be applied (summed), resulting in an incorrect guest time. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'qmp-commands.hx')
-rw-r--r--qmp-commands.hx23
1 files changed, 23 insertions, 0 deletions
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 65218bc147..1ea18b22a3 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -3675,3 +3675,26 @@ Example:
{ "slot": "3", "slot-type": "DIMM", "source": 0, "status": 0}
]}
EQMP
+
+#if defined TARGET_I386
+ {
+ .name = "rtc-reset-reinjection",
+ .args_type = "",
+ .mhandler.cmd_new = qmp_marshal_input_rtc_reset_reinjection,
+ },
+#endif
+
+SQMP
+rtc-reset-reinjection
+---------------------
+
+Reset the RTC interrupt reinjection backlog.
+
+Arguments: None.
+
+Example:
+
+-> { "execute": "rtc-reset-reinjection" }
+<- { "return": {} }
+
+EQMP