[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 0/1] qom: fix setting of qdev array properties
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 0/1] qom: fix setting of qdev array properties |
Date: |
Fri, 8 Sep 2023 10:27:36 +0100 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Fri, Sep 08, 2023 at 11:25:54AM +0200, Kevin Wolf wrote:
> Am 07.09.2023 um 11:35 hat Peter Maydell geschrieben:
> > On Thu, 7 Sept 2023 at 10:33, Markus Armbruster <armbru@redhat.com> wrote:
> > >
> > > Kevin Wolf <kwolf@redhat.com> writes:
> > >
> > > > Am 04.09.2023 um 18:25 hat Daniel P. Berrangé geschrieben:
> > > >> By the time of the 8.2.0 release, it will have been 2 years and 6
> > > >> releases since we accidentally broke setting of array properties
> > > >> for user creatable devices:
> > > >>
> > > >> https://gitlab.com/qemu-project/qemu/-/issues/1090
> > > >
> > > > Oh, nice!
> > >
> > > Nice? *Awesome*!
> > >
> > > > Well, maybe that sounds a bit wrong, but the syntax that was broken was
> > > > problematic and more of a hack,
> > >
> > > A monstrosity, in my opinion. I tried to strangle it in the crib, but
> > > its guardians wouldn't let me. Can dig up references for the morbidly
> > > curious.
> >
> > I don't care about the syntax on the command line much (AFAIK that's
> > just the rocker device). But the actual feature is used more widely
> > within QEMU itself for devices created in C code, which is what it
> > was intended for. If you want to get rid of it you need to provide
> > an adequate replacement.
>
> I have a patch to use QList (i.e. JSON lists) that seems to work for the
> rocker case. Now I need to find and update all of those internal
> callers. Should grepping for '"len-' find all instances that need to be
> changed or are you aware of other ways to access the feature?
IMHO we can just leave the internal only code callers unchanged. I was
about to send this patch to prevent usage leaking into user creatable
devices:
diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index 357b8761b5..2d295411ef 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -584,6 +584,12 @@ static void set_prop_arraylen(Object *obj, Visitor *v,
const char *name,
void *eltptr;
const char *arrayname;
int i;
+ DeviceClass *devc = DEVICE_CLASS(object_get_class(obj));
+
+ if (devc->user_creatable) {
+ error_setg(errp, "array property not permitted for user creatable
devices");
+ return;
+ }
if (*alenptr) {
error_setg(errp, "array size property %s may not be set more than
once",
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [PATCH 0/1] qom: fix setting of qdev array properties, Daniel P . Berrangé, 2023/09/04
- [PATCH 1/1] qom: fix setting of array properties, Daniel P . Berrangé, 2023/09/04
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Kevin Wolf, 2023/09/05
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Peter Maydell, 2023/09/05
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Markus Armbruster, 2023/09/07
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Peter Maydell, 2023/09/07
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Daniel P . Berrangé, 2023/09/07
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Kevin Wolf, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties,
Daniel P . Berrangé <=
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Kevin Wolf, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Daniel P . Berrangé, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Peter Maydell, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Kevin Wolf, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Peter Maydell, 2023/09/08
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Kevin Wolf, 2023/09/07
- Re: [PATCH 0/1] qom: fix setting of qdev array properties, Markus Armbruster, 2023/09/07
Re: [PATCH 0/1] qom: fix setting of qdev array properties, Markus Armbruster, 2023/09/07