All new accounts created on Gitlab now require administrator approval. If you invite any collaborators, please let Flux staff know so they can approve the accounts.

Commit 6a1fa9f5 authored by Zhu Guihua's avatar Zhu Guihua Committed by Luiz Capitulino

monitor: add del completion for peripheral device

Add peripheral_device_del_completion() to let peripheral device del completion
be possible.
Signed-off-by: default avatarZhu Guihua <zhugh.fnst@cn.fujitsu.com>
Reviewed-by: default avatarMarcel Apfelbaum <marcel.a@redhat.com>
Reviewed-by: default avatarIgor Mammedov <imammedo@redhat.com>
Signed-off-by: default avatarLuiz Capitulino <lcapitulino@redhat.com>
parent 66e56b13
......@@ -4341,6 +4341,31 @@ static void device_del_bus_completion(ReadLineState *rs, BusState *bus,
}
}
static void peripheral_device_del_completion(ReadLineState *rs,
const char *str, size_t len)
{
Object *peripheral;
GSList *list = NULL, *item;
peripheral = object_resolve_path("/machine/peripheral/", NULL);
if (peripheral == NULL) {
return;
}
object_child_foreach(peripheral, qdev_build_hotpluggable_device_list,
&list);
for (item = list; item; item = g_slist_next(item)) {
DeviceState *dev = item->data;
if (dev->id && !strncmp(str, dev->id, len)) {
readline_add_completion(rs, dev->id);
}
}
g_slist_free(list);
}
void chardev_remove_completion(ReadLineState *rs, int nb_args, const char *str)
{
size_t len;
......@@ -4414,6 +4439,7 @@ void device_del_completion(ReadLineState *rs, int nb_args, const char *str)
len = strlen(str);
readline_set_completion_index(rs, len);
device_del_bus_completion(rs, sysbus_get_default(), str, len);
peripheral_device_del_completion(rs, str, len);
}
void object_del_completion(ReadLineState *rs, int nb_args, const char *str)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment