From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MgLxh-0003ne-By for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:07:05 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MgLxc-0003hU-DP for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:07:04 -0400 Received: from [199.232.76.173] (port=45825 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MgLxc-0003hB-6E for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:07:00 -0400 Received: from mx1.redhat.com ([209.132.183.28]:62539) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MgLxb-0000oD-GB for qemu-devel@nongnu.org; Wed, 26 Aug 2009 13:06:59 -0400 From: Luiz Capitulino Date: Wed, 26 Aug 2009 14:05:41 -0300 Message-Id: <1251306352-31316-19-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1251306352-31316-1-git-send-email-lcapitulino@redhat.com> References: <1251306352-31316-1-git-send-email-lcapitulino@redhat.com> Subject: [Qemu-devel] [PATCH 18/29] monitor: Port handler_10 to use QDict List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aliguori@us.ibm.com, avi@redhat.com This commit ports command handlers that receive ten arguments to use the new monitor's dictionary. Signed-off-by: Luiz Capitulino --- monitor.c | 26 ++++++++------------------ 1 files changed, 8 insertions(+), 18 deletions(-) diff --git a/monitor.c b/monitor.c index 6b3ccb9..cd2a4db 100644 --- a/monitor.c +++ b/monitor.c @@ -1695,18 +1695,15 @@ static void do_acl_remove(Monitor *mon, const QDict *qdict) } #if defined(TARGET_I386) -static void do_inject_mce(Monitor *mon, - int cpu_index, int bank, - unsigned status_hi, unsigned status_lo, - unsigned mcg_status_hi, unsigned mcg_status_lo, - unsigned addr_hi, unsigned addr_lo, - unsigned misc_hi, unsigned misc_lo) +static void do_inject_mce(Monitor *mon, const QDict *qdict) { CPUState *cenv; - uint64_t status = ((uint64_t)status_hi << 32) | status_lo; - uint64_t mcg_status = ((uint64_t)mcg_status_hi << 32) | mcg_status_lo; - uint64_t addr = ((uint64_t)addr_hi << 32) | addr_lo; - uint64_t misc = ((uint64_t)misc_hi << 32) | misc_lo; + int cpu_index = qdict_get_int(qdict, "cpu_index"); + int bank = qdict_get_int(qdict, "bank"); + uint64_t status = qdict_get_int(qdict, "status"); + uint64_t mcg_status = qdict_get_int(qdict, "mcg_status"); + uint64_t addr = qdict_get_int(qdict, "addr"); + uint64_t misc = qdict_get_int(qdict, "misc"); for (cenv = first_cpu; cenv != NULL; cenv = cenv->next_cpu) if (cenv->cpu_index == cpu_index && cenv->mcg_cap) { @@ -2594,9 +2591,6 @@ static void monitor_handle_command(Monitor *mon, const char *cmdline) void *str_allocated[MAX_ARGS]; void *args[MAX_ARGS]; void (*handler_d)(Monitor *mon, const QDict *qdict); - void (*handler_10)(Monitor *mon, void *arg0, void *arg1, void *arg2, - void *arg3, void *arg4, void *arg5, void *arg6, - void *arg7, void *arg8, void *arg9); #ifdef DEBUG monitor_printf(mon, "command='%s'\n", cmdline); @@ -2876,14 +2870,10 @@ static void monitor_handle_command(Monitor *mon, const char *cmdline) case 5: case 6: case 7: + case 10: handler_d = cmd->handler; handler_d(mon, qdict); break; - case 10: - handler_10 = cmd->handler; - handler_10(mon, args[0], args[1], args[2], args[3], args[4], args[5], - args[6], args[7], args[8], args[9]); - break; default: monitor_printf(mon, "unsupported number of arguments: %d\n", nb_args); goto fail; -- 1.6.4.1.184.g2e117