[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 08/23] Monitor: Drop is_async_return()
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] [PATCH 08/23] Monitor: Drop is_async_return() |
Date: |
Fri, 1 Oct 2010 15:19:12 -0300 |
If I understood it correcty, the is_async_return() logic was only
used to prevent QMP from issuing duplicated success responses
for asynchronous handlers.
However, QMP doesn't use do_info() anymore so this is dead logic
and (hopefully) can be safely dropped.
Signed-off-by: Luiz Capitulino <address@hidden>
---
monitor.c | 25 +------------------------
1 files changed, 1 insertions(+), 24 deletions(-)
diff --git a/monitor.c b/monitor.c
index 4fc0ad3..7f2af49 100644
--- a/monitor.c
+++ b/monitor.c
@@ -656,12 +656,6 @@ static int do_info(Monitor *mon, const QDict *qdict,
QObject **ret_data)
if (monitor_handler_is_async(cmd)) {
user_async_info_handler(mon, cmd);
- /*
- * Indicate that this command is asynchronous and will not return any
- * data (not even empty). Instead, the data will be returned via a
- * completion callback.
- */
- *ret_data = qobject_from_jsonf("{ '__mon_async': 'return' }");
} else if (monitor_handler_ported(cmd)) {
QObject *info_data = NULL;
@@ -3720,15 +3714,6 @@ void monitor_set_error(Monitor *mon, QError *qerror)
}
}
-static int is_async_return(const QObject *data)
-{
- if (data && qobject_type(data) == QTYPE_QDICT) {
- return qdict_haskey(qobject_to_qdict(data), "__mon_async");
- }
-
- return 0;
-}
-
static void handler_audit(Monitor *mon, const mon_cmd_t *cmd, int ret)
{
if (monitor_ctrl_mode(mon)) {
@@ -3787,15 +3772,7 @@ static void monitor_call_handler(Monitor *mon, const
mon_cmd_t *cmd,
ret = cmd->mhandler.cmd_new(mon, params, &data);
handler_audit(mon, cmd, ret);
- if (is_async_return(data)) {
- /*
- * Asynchronous commands have no initial return data but they can
- * generate errors. Data is returned via the async completion handler.
- */
- if (monitor_ctrl_mode(mon) && monitor_has_error(mon)) {
- monitor_protocol_emitter(mon, NULL);
- }
- } else if (monitor_ctrl_mode(mon)) {
+ if (monitor_ctrl_mode(mon)) {
/* Monitor Protocol */
monitor_protocol_emitter(mon, data);
} else {
--
1.7.3.1.50.g1e633
- [Qemu-devel] [PULL 00/23]: Monitor queue, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 01/23] Add support for JSON pretty printing, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 02/23] Add option to turn on JSON pretty printing in monitor, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 03/23] disable guest-provided stats on "info balloon" command, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 04/23] Monitor: Introduce search_dispatch_table(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 05/23] QMP: handle_qmp_command(): Move 'cmd' sanity check, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 06/23] QMP: Don't use do_info(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 08/23] Monitor: Drop is_async_return(),
Luiz Capitulino <=
- [Qemu-devel] [PATCH 07/23] Monitor: Drop QMP bits from do_info(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 09/23] Monitor: Convert do_info() back to HMP, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 10/23] Monitor: Introduce the qmp-commands.hx file, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 11/23] QMP: Introduce qmp_find_cmd(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 12/23] QMP: Introduce command dispatch table, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 13/23] QMP: Introduce query commands dispatch table, Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 14/23] QMP: Simplify do_info_commands(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 15/23] QMP: Small cleanup in handle_qmp_command(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 17/23] Monitor: Drop monitor_cmd_user_only(), Luiz Capitulino, 2010/10/01
- [Qemu-devel] [PATCH 16/23] Monitor: Drop QMP info from the qemu-monitor.hx file, Luiz Capitulino, 2010/10/01