aboutsummaryrefslogtreecommitdiff
path: root/qapi/machine.json
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé <philmd@redhat.com>2020-09-13 21:53:41 +0200
committerMarkus Armbruster <armbru@redhat.com>2020-09-29 15:41:35 +0200
commit8dc007d3d9f79d0c60c750055a79ce8b21bfb494 (patch)
tree6976d1dfce41d752ad2acb408517f77dd39fbe5d /qapi/machine.json
parentb150cb8f67bf491a49a1cb1c7da151eeacbdbcc9 (diff)
downloadqemu-8dc007d3d9f79d0c60c750055a79ce8b21bfb494.zip
qemu-8dc007d3d9f79d0c60c750055a79ce8b21bfb494.tar.gz
qemu-8dc007d3d9f79d0c60c750055a79ce8b21bfb494.tar.bz2
qapi: Restrict LostTickPolicy enum to machine code
Restricting LostTickPolicy to machine.json pulls slightly less QAPI-generated code into user-mode. Acked-by: Markus Armbruster <armbru@redhat.com> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20200913195348.1064154-2-philmd@redhat.com> [Add rationale to commit message] Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'qapi/machine.json')
-rw-r--r--qapi/machine.json32
1 files changed, 32 insertions, 0 deletions
diff --git a/qapi/machine.json b/qapi/machine.json
index d8ed096..8e2164a 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -403,6 +403,38 @@
{ 'command': 'query-target', 'returns': 'TargetInfo' }
##
+# @LostTickPolicy:
+#
+# Policy for handling lost ticks in timer devices. Ticks end up getting
+# lost when, for example, the guest is paused.
+#
+# @discard: throw away the missed ticks and continue with future injection
+# normally. The guest OS will see the timer jump ahead by a
+# potentially quite significant amount all at once, as if the
+# intervening chunk of time had simply not existed; needless to
+# say, such a sudden jump can easily confuse a guest OS which is
+# not specifically prepared to deal with it. Assuming the guest
+# OS can deal correctly with the time jump, the time in the guest
+# and in the host should now match.
+#
+# @delay: continue to deliver ticks at the normal rate. The guest OS will
+# not notice anything is amiss, as from its point of view time will
+# have continued to flow normally. The time in the guest should now
+# be behind the time in the host by exactly the amount of time during
+# which ticks have been missed.
+#
+# @slew: deliver ticks at a higher rate to catch up with the missed ticks.
+# The guest OS will not notice anything is amiss, as from its point
+# of view time will have continued to flow normally. Once the timer
+# has managed to catch up with all the missing ticks, the time in
+# the guest and in the host should match.
+#
+# Since: 2.0
+##
+{ 'enum': 'LostTickPolicy',
+ 'data': ['discard', 'delay', 'slew' ] }
+
+##
# @NumaOptionsType:
#
# @node: NUMA nodes configuration