在 2022/10/2 2:31, Markus Armbruster 写道:
huang...@chinatelecom.cn writes:
From: Hyman Huang(黄勇) <huang...@chinatelecom.cn>
Export dirty limit throttle time and estimated ring full
time, through which we can observe the process of dirty
limit during live migration.
Signed-off-by: Hyman Huang(黄勇) <huang...@chinatelecom.cn>
[...]
diff --git a/qapi/migration.json b/qapi/migration.json
index bc4bc96..c263d54 100644
--- a/qapi/migration.json
+++ b/qapi/migration.json
@@ -242,6 +242,12 @@
# Present and non-empty when migration is blocked.
# (since 6.0)
#
+# @dirty-limit-throttle-us-per-full: Throttle time (us) during the period of
+# dirty ring full (since 7.0)
+#
+# @dirty-limit-us-ring-full: Estimated periodic time (us) of dirty ring full.
+# (since 7.0)
+#
Can you explain what is measured here a bit more verbosely?
The two fields of migration info aims to export dirty-limit throttle
time so that upper apps can check out the process of live migration,
like 'cpu-throttle-percentage'.
The commit "tests: Add migration dirty-limit capability test" make use
of the 'dirty-limit-throttle-us-per-full' to checkout if dirty-limit has
started, the commit "tests/migration: Introduce dirty-limit into
guestperf" introduce the two field so guestperf tools also show the
process of dirty-limit migration.
And i also use qmp_query_migrate to observe the migration by checkout
these two fields.
I'm not sure if above explantation is what you want exactly, please be
free to start any discussion about this features.
Thank Markus.
Yong
# Since: 0.14
##
{ 'struct': 'MigrationInfo',
@@ -259,7 +265,9 @@
'*postcopy-blocktime' : 'uint32',
'*postcopy-vcpu-blocktime': ['uint32'],
'*compression': 'CompressionStats',
- '*socket-address': ['SocketAddress'] } }
+ '*socket-address': ['SocketAddress'],
+ '*dirty-limit-throttle-us-per-full': 'int64',
+ '*dirty-limit-us-ring-full': 'int64'} }
##
# @query-migrate:
[...]
--
Best regard
Hyman Huang(黄勇)