mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-26 21:10:42 +00:00
hmp-commands: add sync-profile
The command introduced here is just for developers. This means that: - the interface implemented here could change in the future - the command is only meant to be used from HMP, not from QMP Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
12df189de1
commit
dd12e1bbf2
@ -643,6 +643,21 @@ sendkey ctrl-alt-f1
|
||||
|
||||
This command is useful to send keys that your graphical user interface
|
||||
intercepts at low level, such as @code{ctrl-alt-f1} in X Window.
|
||||
ETEXI
|
||||
{
|
||||
.name = "sync-profile",
|
||||
.args_type = "op:s?",
|
||||
.params = "[on|off|reset]",
|
||||
.help = "enable, disable or reset synchronization profiling. "
|
||||
"With no arguments, prints whether profiling is on or off.",
|
||||
.cmd = hmp_sync_profile,
|
||||
},
|
||||
|
||||
STEXI
|
||||
@item sync-profile [on|off|reset]
|
||||
@findex sync-profile
|
||||
Enable, disable or reset synchronization profiling. With no arguments, prints
|
||||
whether profiling is on or off.
|
||||
ETEXI
|
||||
|
||||
{
|
||||
|
24
hmp.c
24
hmp.c
@ -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);
|
||||
|
1
hmp.h
1
hmp.h
@ -42,6 +42,7 @@ void hmp_info_tpm(Monitor *mon, const QDict *qdict);
|
||||
void hmp_info_iothreads(Monitor *mon, const QDict *qdict);
|
||||
void hmp_quit(Monitor *mon, const QDict *qdict);
|
||||
void hmp_stop(Monitor *mon, const QDict *qdict);
|
||||
void hmp_sync_profile(Monitor *mon, const QDict *qdict);
|
||||
void hmp_system_reset(Monitor *mon, const QDict *qdict);
|
||||
void hmp_system_powerdown(Monitor *mon, const QDict *qdict);
|
||||
void hmp_exit_preconfig(Monitor *mon, const QDict *qdict);
|
||||
|
Loading…
Reference in New Issue
Block a user