From b6e098d79f661c7d2a631d9c6c8e119f00c3069d Mon Sep 17 00:00:00 2001 From: Luiz Capitulino Date: Fri, 18 Dec 2009 13:25:04 -0200 Subject: [PATCH] monitor: Introduce 'M' argument type This is a target long value in megabytes which should be converted to bytes. It will be used by handlers which accept a megabyte value when in "user mode". Signed-off-by: Luiz Capitulino Signed-off-by: Anthony Liguori --- monitor.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/monitor.c b/monitor.c index a3ec65f1d9..53a4674d9d 100644 --- a/monitor.c +++ b/monitor.c @@ -3501,6 +3501,7 @@ static const mon_cmd_t *monitor_parse_command(Monitor *mon, break; case 'i': case 'l': + case 'M': { int64_t val; @@ -3531,6 +3532,8 @@ static const mon_cmd_t *monitor_parse_command(Monitor *mon, monitor_printf(mon, "\'%s\' has failed: ", cmdname); monitor_printf(mon, "integer is for 32-bit values\n"); goto fail; + } else if (c == 'M') { + val <<= 20; } qdict_put(qdict, key, qint_from_int(val)); } @@ -3935,6 +3938,7 @@ static int check_arg(const CmdArgs *cmd_args, QDict *args) } case 'i': case 'l': + case 'M': if (qobject_type(value) != QTYPE_QINT) { qemu_error_new(QERR_INVALID_PARAMETER_TYPE, name, "int"); return -1; -- 2.11.4.GIT