|
@@ -1062,6 +1062,30 @@ void hmp_stop(Monitor *mon, const QDict *qdict)
|
|
|
qmp_stop(NULL);
|
|
|
}
|
|
|
|
|
|
+void hmp_sync_profile(Monitor *mon, const QDict *qdict)
|
|
|
+{
|
|
|
+ const char *op = qdict_get_try_str(qdict, "op");
|
|
|
+
|
|
|
+ if (op == NULL) {
|
|
|
+ bool on = qsp_is_enabled();
|
|
|
+
|
|
|
+ monitor_printf(mon, "sync-profile is %s\n", on ? "on" : "off");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (!strcmp(op, "on")) {
|
|
|
+ qsp_enable();
|
|
|
+ } else if (!strcmp(op, "off")) {
|
|
|
+ qsp_disable();
|
|
|
+ } else if (!strcmp(op, "reset")) {
|
|
|
+ qsp_reset();
|
|
|
+ } else {
|
|
|
+ Error *err = NULL;
|
|
|
+
|
|
|
+ error_setg(&err, QERR_INVALID_PARAMETER, op);
|
|
|
+ hmp_handle_error(mon, &err);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
void hmp_system_reset(Monitor *mon, const QDict *qdict)
|
|
|
{
|
|
|
qmp_system_reset(NULL);
|