[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v8 10/11] Dump: add hmp command "info dump"
From: |
Peter Xu |
Subject: |
[Qemu-devel] [PATCH v8 10/11] Dump: add hmp command "info dump" |
Date: |
Thu, 18 Feb 2016 13:16:55 +0800 |
It will calculate percentage of finished work from completed and
total.
Signed-off-by: Peter Xu <address@hidden>
---
hmp-commands-info.hx | 14 ++++++++++++++
hmp.c | 17 +++++++++++++++++
hmp.h | 1 +
3 files changed, 32 insertions(+)
diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
index 9b71351..52539c3 100644
--- a/hmp-commands-info.hx
+++ b/hmp-commands-info.hx
@@ -786,6 +786,20 @@ STEXI
Display the value of a storage key (s390 only)
ETEXI
+ {
+ .name = "dump",
+ .args_type = "",
+ .params = "",
+ .help = "Display the latest dump status",
+ .mhandler.cmd = hmp_info_dump,
+ },
+
+STEXI
address@hidden info dump
address@hidden dump
+Display the latest dump status.
+ETEXI
+
STEXI
@end table
ETEXI
diff --git a/hmp.c b/hmp.c
index 7f65b32..d0d0557 100644
--- a/hmp.c
+++ b/hmp.c
@@ -2351,3 +2351,20 @@ void hmp_rocker_of_dpa_groups(Monitor *mon, const QDict
*qdict)
qapi_free_RockerOfDpaGroupList(list);
}
+
+void hmp_info_dump(Monitor *mon, const QDict *qdict)
+{
+ DumpQueryResult *result = qmp_query_dump(NULL);
+
+ assert(result && result->status < DUMP_STATUS__MAX);
+ monitor_printf(mon, "Status: %s\n", DumpStatus_lookup[result->status]);
+
+ if (result->status == DUMP_STATUS_ACTIVE) {
+ float percent = 0;
+ assert(result->total != 0);
+ percent = 100.0 * result->completed / result->total;
+ monitor_printf(mon, "Finished: %.2f %%\n", percent);
+ }
+
+ qapi_free_DumpQueryResult(result);
+}
diff --git a/hmp.h b/hmp.h
index a8c5b5a..093d65f 100644
--- a/hmp.h
+++ b/hmp.h
@@ -131,5 +131,6 @@ void hmp_rocker(Monitor *mon, const QDict *qdict);
void hmp_rocker_ports(Monitor *mon, const QDict *qdict);
void hmp_rocker_of_dpa_flows(Monitor *mon, const QDict *qdict);
void hmp_rocker_of_dpa_groups(Monitor *mon, const QDict *qdict);
+void hmp_info_dump(Monitor *mon, const QDict *qdict);
#endif
--
2.4.3
- [Qemu-devel] [PATCH v7 00/11] Add basic "detach" support for dump-guest-memory, (continued)
- [Qemu-devel] [PATCH v7 00/11] Add basic "detach" support for dump-guest-memory, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 01/11] dump-guest-memory: cleanup: removing dump_{error|cleanup}()., Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 02/11] dump-guest-memory: add "detach" flag for QMP/HMP interfaces., Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 03/11] dump-guest-memory: using static DumpState, add DumpStatus, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 04/11] dump-guest-memory: add dump_in_progress() helper function, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 05/11] dump-guest-memory: introduce dump_process() helper function., Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 06/11] dump-guest-memory: disable dump when in INMIGRATE state, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 07/11] dump-guest-memory: add "detach" support, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 08/11] DumpState: adding total_size and written_size fields, Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 09/11] Dump: add qmp command "query-dump", Peter Xu, 2016/02/18
- [Qemu-devel] [PATCH v8 10/11] Dump: add hmp command "info dump",
Peter Xu <=
- [Qemu-devel] [PATCH v8 11/11] dump-guest-memory: add qmp event DUMP_COMPLETED, Peter Xu, 2016/02/18
- Re: [Qemu-devel] [PATCH v7 00/11] Add basic "detach" support for dump-guest-memory, Peter Xu, 2016/02/18
- Re: [Qemu-devel] [PATCH v7 00/11] Add basic "detach" support for dump-guest-memory, Markus Armbruster, 2016/02/18
- Re: [Qemu-devel] [PATCH v7 00/11] Add basic "detach" support for dump-guest-memory, Paolo Bonzini, 2016/02/18