[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v1 3/3] monitor: add del completion for peripher
From: |
Luiz Capitulino |
Subject: |
Re: [Qemu-devel] [PATCH v1 3/3] monitor: add del completion for peripheral device |
Date: |
Fri, 26 Sep 2014 13:29:41 -0400 |
On Fri, 26 Sep 2014 13:25:45 -0400
Luiz Capitulino <address@hidden> wrote:
> On Thu, 18 Sep 2014 15:53:21 +0800
> Zhu Guihua <address@hidden> wrote:
>
> > Add peripheral_device_del_completion() to let peripheral device del
> > completion
> > be possible.
> >
> > Signed-off-by: Zhu Guihua <address@hidden>
> > ---
> > monitor.c | 24 ++++++++++++++++++++++++
> > 1 file changed, 24 insertions(+)
> >
> > diff --git a/monitor.c b/monitor.c
> > index 667efb7..c0e00e4 100644
> > --- a/monitor.c
> > +++ b/monitor.c
> > @@ -4351,6 +4351,29 @@ 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;
> > + DeviceState *dev = NULL;
> > + ObjectProperty *prop;
> > +
> > + peripheral = object_resolve_path("/machine/peripheral/", NULL);
> > +
> > + if (peripheral == NULL) {
> > + return;
> > + }
> > +
> > + QTAILQ_FOREACH(prop, &peripheral->properties, node) {
> > + if (object_property_is_child(prop)) {
> > + dev = DEVICE(object_property_get_opaque(prop, NULL));
> > + if (dev->id && !strncmp(str, dev->id, len)) {
> > + readline_add_completion(rs, dev->id);
> > + }
> > + }
> > + }
> > +}
> > +
> > void chardev_remove_completion(ReadLineState *rs, int nb_args, const char
> > *str)
> > {
> > size_t len;
> > @@ -4424,6 +4447,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);
> > }
>
> The series intro email mentions device_del, but this is added to
> chardev-remove. Is there a reason for this?
Turns out this is not added to chardev_remove_completion(), looked too
quickly. In any case, would be nice to have Hani's review.
>
> Hani, could you please review this series?
>
> >
> > void object_del_completion(ReadLineState *rs, int nb_args, const char *str)
>