@samitouri / QOSamiQemu / commits / 8b5ca42730

monitor: replace 'common' with 'parent_obj' in MonitorHMP

The field name 'parent_obj' is standard practice for QOM structs so align the HMP monitor. Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dave@treblig.org> Tested-by: Peter Krempa <pkrempa@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-ID: <20260706135824.2623960-3-berrange@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>

Daniel P. Berrangé committed Jul 6, 2026 at 14:57 UTC 8b5ca4273098e1e36500beed72bb5d3e2d361850
6 files changed +34 -31
monitor/hmp-cmds.c
+1 -1
@@ -287,7 +287,7 @@ void hmp_info_sync_profile(Monitor *mon, const QDict *qdict)
287
288 void hmp_info_history(Monitor *mon, const QDict *qdict)
289 {
290 - MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, common);
290 + MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, parent_obj);
291 int i;
292 const char *str;
293
monitor/hmp.c
+23 -20
@@ -48,9 +48,9 @@ static void monitor_command_cb(void *opaque, const char *cmdline,
48 {
49 MonitorHMP *mon = opaque;
50
51 - monitor_suspend(&mon->common);
51 + monitor_suspend(&mon->parent_obj);
52 handle_hmp_command(mon, cmdline);
53 - monitor_resume(&mon->common);
53 + monitor_resume(&mon->parent_obj);
54 }
55
56 void monitor_read_command(MonitorHMP *mon, int show_prompt)
@@ -73,7 +73,7 @@ int monitor_read_password(MonitorHMP *mon, ReadLineFunc *readline_func,
73 /* prompt is printed on return from the command handler */
74 return 0;
75 } else {
76 - monitor_printf(&mon->common,
76 + monitor_printf(&mon->parent_obj,
77 "terminal does not support password prompting\n");
78 return -ENOTTY;
79 }
@@ -695,7 +695,7 @@ static const HMPCommand *monitor_parse_command(MonitorHMP *hmp_mon,
695 const char **cmdp,
696 HMPCommand *table)
697 {
698 - Monitor *mon = &hmp_mon->common;
698 + Monitor *mon = &hmp_mon->parent_obj;
699 const char *p;
700 const HMPCommand *cmd;
701 char cmdname[256];
@@ -1188,35 +1188,37 @@ void handle_hmp_command(MonitorHMP *mon, const char *cmdline)
1188
1189 if (!cmd->cmd && !cmd->cmd_info_hrt) {
1190 /* FIXME: is it useful to try autoload modules here ??? */
1191 - monitor_printf(&mon->common, "Command \"%.*s\" is not available.\n",
1191 + monitor_printf(&mon->parent_obj, "Command \"%.*s\" is not available.\n",
1192 (int)(cmdline - cmd_start), cmd_start);
1193 return;
1194 }
1195
1196 - qdict = monitor_parse_arguments(&mon->common, &cmdline, cmd);
1196 + qdict = monitor_parse_arguments(&mon->parent_obj, &cmdline, cmd);
1197 if (!qdict) {
1198 while (cmdline > cmd_start && qemu_isspace(cmdline[-1])) {
1199 cmdline--;
1200 }
1201 - monitor_printf(&mon->common, "Try \"help %.*s\" for more information\n",
1201 + monitor_printf(&mon->parent_obj,
1202 + "Try \"help %.*s\" for more information\n",
1203 (int)(cmdline - cmd_start), cmd_start);
1204 return;
1205 }
1206
1207 if (!cmd->coroutine) {
1208 /* old_mon is non-NULL when called from qmp_human_monitor_command() */
1208 - Monitor *old_mon = monitor_set_cur(qemu_coroutine_self(), &mon->common);
1209 - handle_hmp_command_exec(&mon->common, cmd, qdict);
1209 + Monitor *old_mon = monitor_set_cur(qemu_coroutine_self(),
1210 + &mon->parent_obj);
1211 + handle_hmp_command_exec(&mon->parent_obj, cmd, qdict);
1212 monitor_set_cur(qemu_coroutine_self(), old_mon);
1213 } else {
1214 HandleHmpCommandCo data = {
1213 - .mon = &mon->common,
1215 + .mon = &mon->parent_obj,
1216 .cmd = cmd,
1217 .qdict = qdict,
1218 .done = false,
1219 };
1220 Coroutine *co = qemu_coroutine_create(handle_hmp_command_co, &data);
1219 - monitor_set_cur(co, &mon->common);
1221 + monitor_set_cur(co, &mon->parent_obj);
1222 aio_co_enter(qemu_get_aio_context(), co);
1223 AIO_WAIT_WHILE_UNLOCKED(NULL, !data.done);
1224 }
@@ -1434,7 +1436,7 @@ cleanup:
1436
1437 static void monitor_read(void *opaque, const uint8_t *buf, int size)
1438 {
1437 - MonitorHMP *mon = container_of(opaque, MonitorHMP, common);
1439 + MonitorHMP *mon = container_of(opaque, MonitorHMP, parent_obj);
1440 int i;
1441
1442 if (mon->rs) {
@@ -1443,7 +1445,7 @@ static void monitor_read(void *opaque, const uint8_t *buf, int size)
1445 }
1446 } else {
1447 if (size == 0 || buf[size - 1] != 0) {
1446 - monitor_printf(&mon->common, "corrupted command\n");
1448 + monitor_printf(&mon->parent_obj, "corrupted command\n");
1449 } else {
1450 handle_hmp_command(mon, (char *)buf);
1451 }
@@ -1512,26 +1514,26 @@ static void G_GNUC_PRINTF(2, 3) monitor_readline_printf(void *opaque,
1514 MonitorHMP *mon = opaque;
1515 va_list ap;
1516 va_start(ap, fmt);
1515 - monitor_vprintf(&mon->common, fmt, ap);
1517 + monitor_vprintf(&mon->parent_obj, fmt, ap);
1518 va_end(ap);
1519 }
1520
1521 static void monitor_readline_flush(void *opaque)
1522 {
1523 MonitorHMP *mon = opaque;
1522 - monitor_flush(&mon->common);
1524 + monitor_flush(&mon->parent_obj);
1525 }
1526
1527 void monitor_init_hmp(Chardev *chr, bool use_readline, Error **errp)
1528 {
1529 MonitorHMP *mon = g_new0(MonitorHMP, 1);
1530
1529 - if (!qemu_chr_fe_init(&mon->common.chr, chr, errp)) {
1531 + if (!qemu_chr_fe_init(&mon->parent_obj.chr, chr, errp)) {
1532 g_free(mon);
1533 return;
1534 }
1535
1534 - monitor_data_init(&mon->common, false, false, false);
1536 + monitor_data_init(&mon->parent_obj, false, false, false);
1537
1538 mon->use_readline = use_readline;
1539 if (mon->use_readline) {
@@ -1542,9 +1544,10 @@ void monitor_init_hmp(Chardev *chr, bool use_readline, Error **errp)
1544 monitor_read_command(mon, 0);
1545 }
1546
1545 - qemu_chr_fe_set_handlers(&mon->common.chr, monitor_can_read, monitor_read,
1546 - monitor_event, NULL, &mon->common, NULL, true);
1547 - monitor_list_append(&mon->common);
1547 + qemu_chr_fe_set_handlers(&mon->parent_obj.chr,
1548 + monitor_can_read, monitor_read, monitor_event,
1549 + NULL, &mon->parent_obj, NULL, true);
1550 + monitor_list_append(&mon->parent_obj);
1551 }
1552
1553 /**
monitor/monitor-internal.h
+1 -1
@@ -128,7 +128,7 @@ struct Monitor {
128 };
129
130 struct MonitorHMP {
131 - Monitor common;
131 + Monitor parent_obj;
132 bool use_readline;
133 /*
134 * State used only in the thread "owning" the monitor.
monitor/monitor.c
+3 -3
@@ -132,7 +132,7 @@ static inline bool monitor_is_hmp_non_interactive(const Monitor *mon)
132 return false;
133 }
134
135 - return !monitor_uses_readline(container_of(mon, MonitorHMP, common));
135 + return !monitor_uses_readline(container_of(mon, MonitorHMP, parent_obj));
136 }
137
138 static gboolean monitor_unblocked(void *do_not_use, GIOCondition cond,
@@ -542,7 +542,7 @@ static void monitor_accept_input(void *opaque)
542
543 qemu_mutex_lock(&mon->mon_lock);
544 if (!monitor_is_qmp(mon) && mon->reset_seen) {
545 - MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, common);
545 + MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, parent_obj);
546 assert(hmp_mon->rs);
547 readline_restart(hmp_mon->rs);
548 qemu_mutex_unlock(&mon->mon_lock);
@@ -627,7 +627,7 @@ void monitor_data_destroy(Monitor *mon)
627 if (monitor_is_qmp(mon)) {
628 monitor_data_destroy_qmp(container_of(mon, MonitorQMP, common));
629 } else {
630 - readline_free(container_of(mon, MonitorHMP, common)->rs);
630 + readline_free(container_of(mon, MonitorHMP, parent_obj)->rs);
631 }
632 g_string_free(mon->outbuf, true);
633 qemu_mutex_destroy(&mon->mon_lock);
monitor/qmp-cmds.c
+5 -5
@@ -168,10 +168,10 @@ char *qmp_human_monitor_command(const char *command_line, bool has_cpu_index,
168 char *output = NULL;
169 MonitorHMP hmp = {};
170
171 - monitor_data_init(&hmp.common, false, true, false);
171 + monitor_data_init(&hmp.parent_obj, false, true, false);
172
173 if (has_cpu_index) {
174 - int ret = monitor_set_cpu(&hmp.common, cpu_index);
174 + int ret = monitor_set_cpu(&hmp.parent_obj, cpu_index);
175 if (ret < 0) {
176 error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "cpu-index",
177 "a CPU number");
@@ -181,12 +181,12 @@ char *qmp_human_monitor_command(const char *command_line, bool has_cpu_index,
181
182 handle_hmp_command(&hmp, command_line);
183
184 - WITH_QEMU_LOCK_GUARD(&hmp.common.mon_lock) {
185 - output = g_strdup(hmp.common.outbuf->str);
184 + WITH_QEMU_LOCK_GUARD(&hmp.parent_obj.mon_lock) {
185 + output = g_strdup(hmp.parent_obj.outbuf->str);
186 }
187
188 out:
189 - monitor_data_destroy(&hmp.common);
189 + monitor_data_destroy(&hmp.parent_obj);
190 return output;
191 }
192
ui/ui-hmp-cmds.c
+1 -1
@@ -343,7 +343,7 @@ void hmp_change_vnc(Monitor *mon, const char *device, const char *target,
343 return;
344 }
345 if (!arg) {
346 - MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, common);
346 + MonitorHMP *hmp_mon = container_of(mon, MonitorHMP, parent_obj);
347 monitor_read_password(hmp_mon, hmp_change_read_arg, NULL);
348 } else {
349 qmp_change_vnc_password(arg, errp);