On Fri, 2014-07-18 at 18:32 +0200, Andreas Färber wrote: > Am 18.07.2014 18:23, schrieb Marcel Apfelbaum: > > On Fri, 2014-07-18 at 18:10 +0200, Andreas Färber wrote: > >> Hi, > >> > >> Am 18.07.2014 17:59, schrieb Marcel Apfelbaum: > >>> On Fri, 2014-07-18 at 16:25 +0200, Andreas Färber wrote: > >>>> Am 29.06.2014 11:09, schrieb Marcel Apfelbaum: > >>>>> Replaced '_' with '-' to comply with QOM guidelines. > >>>>> Made the conversion from HMP to QMP in vl.c > >>>>> > >>>>> Signed-off-by: Marcel Apfelbaum <marce...@redhat.com> > >>>>> --- > >>>>> hw/core/machine.c | 8 ++++---- > >>>>> vl.c | 12 +++++++++++- > >>>>> 2 files changed, 15 insertions(+), 5 deletions(-) > >>>> [snip] > >>>>> diff --git a/vl.c b/vl.c > >>>>> index a1686ef..7587c97 100644 > >>>>> --- a/vl.c > >>>>> +++ b/vl.c > >>>>> @@ -2820,15 +2820,25 @@ static int object_set_property(const char > >>>>> *name, const char *value, void *opaque > >>>>> Object *obj = OBJECT(opaque); > >>>>> StringInputVisitor *siv; > >>>>> Error *local_err = NULL; > >>>>> + char *c, *qom_name; > >>>>> > >>>>> if (strcmp(name, "qom-type") == 0 || strcmp(name, "id") == 0 || > >>>>> strcmp(name, "type") == 0) { > >>>>> return 0; > >>>>> } > >>>>> > >>>>> + qom_name = g_strdup(name); > >>>>> + c = qom_name; > >>>>> + while (*c++) { > >>>>> + if (*c == '_') { > >>>>> + *c = '-'; > >>>>> + } > >>>>> + } > >>>> > >>>> Actually, is this really safe? By my reading, this function handles > >>>> -object as well, which in turn allows - in theory - to instantiate any > >>>> device, where some will still have underscores in their property names. > >>>> Not sure if all non-device objects such as virtio-rng backends have been > >>>> checked? > >>> Hi Andreas, > >>> > >>> I checked and object_set_property is used only be machine right now, so > >>> no problem here. > >> > >> Indeed you are right. If -object is no longer using it, can we drop > >> qom-type handling? What changed there? > > Hi Andreas, > > > > The check was originally placed there by Paolo for -object handling. > > We need to find out where the "qom-type" property is coming from. (What > > code is adding it) > > If is added automatically at parse/init time we can't get rid of it. > > If is object specific, it is ok. > > It was not a QOM property, it was a QemuOpt parameter for -object and > therefore excluded from the handling like your type property is. Paolo > had dicussed to rename qom-type to type for simplicity and consistency, > but what I don't know is why this function is no longer used. Paolo, can you help? I posted a V2, but I can resend in case it is needed, of course.
Thanks, Marcel > > Andreas > > > Paolo, can you please advise? > > > > Thanks, > > Marcel >