[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v10 11/12] migration/dirtyrate: Implement qmp_cal_dirty_rate(
From: |
Eric Blake |
Subject: |
Re: [PATCH v10 11/12] migration/dirtyrate: Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function |
Date: |
Wed, 23 Sep 2020 13:17:32 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 |
On 9/16/20 1:22 AM, Chuan Zheng wrote:
Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function which could be
called
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com>
---
+++ b/qapi/migration.json
@@ -1737,3 +1737,53 @@
##
{ 'enum': 'DirtyRateStatus',
'data': [ 'unstarted', 'measuring', 'measured'] }
+
+##
+# @DirtyRateInfo:
+#
+# Information about current dirty page rate of vm.
+#
+# @dirty-rate: @dirtyrate describing the dirty page rate of vm
+# in units of MB/s.
+# If this field return '-1', it means querying is not
+# start or not complete.
Grammar:
it means querying has not yet started or completed.
Should this field instead be optional, and omitted for those cases? In
which case, I'd suggest:
...in units of MB/s, present only when querying the rate has completed.
+#
+# @status: status containing dirtyrate query status includes
+# 'unstarted' or 'measuring' or 'measured'
+#
+# @start-time: start time in units of second for calculation
+#
+# @calc-time: time in units of second for sample dirty pages
+#
+# Since: 5.2
+#
+##
+{ 'struct': 'DirtyRateInfo',
+ 'data': {'dirty-rate': 'int64',
+ 'status': 'DirtyRateStatus',
+ 'start-time': 'int64',
+ 'calc-time': 'int64'} }
+
+##
+# @calc-dirty-rate:
+#
+# start calculating dirty page rate for vm
+#
+# @calc-time: time in units of second for sample dirty pages
+#
+# Since: 5.2
+#
+# Example:
+# {"command": "calc-dirty-rate", "data": {"calc-time": 1} }
+#
+##
+{ 'command': 'calc-dirty-rate', 'data': {'calc-time': 'int64'} }
+
+##
+# @query-dirty-rate:
+#
+# query dirty page rate in units of MB/s for vm
+#
+# Since: 5.2
+##
+{ 'command': 'query-dirty-rate', 'returns': 'DirtyRateInfo' }
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
- [PATCH v10 05/12] migration/dirtyrate: move RAMBLOCK_FOREACH_MIGRATABLE into ram.h, (continued)
- [PATCH v10 05/12] migration/dirtyrate: move RAMBLOCK_FOREACH_MIGRATABLE into ram.h, Chuan Zheng, 2020/09/16
- [PATCH v10 04/12] migration/dirtyrate: Add dirtyrate statistics series functions, Chuan Zheng, 2020/09/16
- [PATCH v10 02/12] migration/dirtyrate: add DirtyRateStatus to denote calculation status, Chuan Zheng, 2020/09/16
- [PATCH v10 12/12] migration/dirtyrate: Add trace_calls to make it easier to debug, Chuan Zheng, 2020/09/16
- [PATCH v10 10/12] migration/dirtyrate: Implement calculate_dirtyrate() function, Chuan Zheng, 2020/09/16
- [PATCH v10 01/12] migration/dirtyrate: setup up query-dirtyrate framwork, Chuan Zheng, 2020/09/16
- [PATCH v10 06/12] migration/dirtyrate: Record hash results for each sampled page, Chuan Zheng, 2020/09/16
- [PATCH v10 09/12] migration/dirtyrate: Implement set_sample_page_period() and is_sample_period_valid(), Chuan Zheng, 2020/09/16
- [PATCH v10 11/12] migration/dirtyrate: Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function, Chuan Zheng, 2020/09/16
- [PATCH v10 07/12] migration/dirtyrate: Compare page hash results for recorded sampled page, Chuan Zheng, 2020/09/16
- [PATCH v10 08/12] migration/dirtyrate: skip sampling ramblock with size below MIN_RAMBLOCK_SIZE, Chuan Zheng, 2020/09/16
- Re: [PATCH v10 00/12] *** A Method for evaluating dirty page rate ***, Dr. David Alan Gilbert, 2020/09/17
Re: [PATCH v10 00/12] *** A Method for evaluating dirty page rate ***, Dr. David Alan Gilbert, 2020/09/23