On 12/21/2010 12:58 AM, Markus Armbruster wrote: > Lai Jiangshan <laijs@xxxxxxxxxxxxxx> writes: > >> When the argument "cpu-index" is not given, >> then "nmi" command will inject NMI on all CPUs. >> >> This simulate the nmi button on physical machine. >> >> Signed-off-by: Lai Jiangshan <laijs@xxxxxxxxxxxxxx> >> --- >> diff --git a/hmp-commands.hx b/hmp-commands.hx >> index 8de7aa3..d8fe4c0 100644 >> --- a/hmp-commands.hx >> +++ b/hmp-commands.hx >> @@ -721,9 +721,9 @@ ETEXI >> #if defined(TARGET_I386) >> { >> .name = "nmi", >> - .args_type = "cpu-index:i", >> - .params = "cpu", >> - .help = "inject an NMI on the given CPU", >> + .args_type = "cpu-index:i?", >> + .params = "[cpu]", >> + .help = "inject an NMI on all CPUs or the given CPU", >> .mhandler.cmd = do_inject_nmi, >> }, >> #endif >> diff --git a/monitor.c b/monitor.c >> index c16b39d..45a8dc2 100644 >> --- a/monitor.c >> +++ b/monitor.c >> @@ -2410,7 +2410,13 @@ static void do_wav_capture(Monitor *mon, const QDict *qdict) >> static void do_inject_nmi(Monitor *mon, const QDict *qdict) >> { >> CPUState *env; >> - int cpu_index = qdict_get_int(qdict, "cpu-index"); >> + int cpu_index = qdict_get_try_int(qdict, "cpu-index", -1); > > Note that we interpret "nmi -1" as "nmi" (no argument). Doesn't matter > now. Does matter after the next patch, because that patch makes the > command when the argument doesn't make sense. Except it doesn't for the > non-sensical argument -1. Same problem with every existing use of > qdict_get_try_int() in the monitor. Do we care? > Good catch!! I will fix it. Tanks, Lai. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html