RE: Does "-object" support structured options now?

2024-03-06 Thread Chun Feng Wu
Yes, you’re right, QEMU >=6.0.0 works well, I failed test because I did it on 
QEMU 4.2.1

From: Daniel P. Berrangé 
Date: Wednesday, March 6, 2024 at 22:43
To: Chun Feng Wu , qemu-devel@nongnu.org 

Subject: [EXTERNAL] Re: Does "-object" support structured options now?
On Wed, Mar 06, 2024 at 02:36:08PM +, Daniel P. Berrangé wrote:
> On Wed, Mar 06, 2024 at 02:33:05PM +, Chun Feng Wu wrote:
> > Thanks Daniel for your response!
> >
> > I tried it with the following cmd
> >
> > qemu-system-x86_64 [other options...] \
> >   -object 
> > '{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}'
> >
> > And I got error:
> > qemu-system-x86_64: -object 
> > {"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}: 
> > Parameter 'id' is missing
> >
> > Do you know why such error happens?
>
> You have made a mistake somewhere in invoking it ?

Or perhaps you are using a much older QEMU release which lacks JSON
support ?  You need QEMU >= 6.0.0

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  :|


Re: Does "-object" support structured options now?

2024-03-06 Thread Daniel P . Berrangé
On Wed, Mar 06, 2024 at 02:36:08PM +, Daniel P. Berrangé wrote:
> On Wed, Mar 06, 2024 at 02:33:05PM +, Chun Feng Wu wrote:
> > Thanks Daniel for your response!
> > 
> > I tried it with the following cmd
> > 
> > qemu-system-x86_64 [other options...] \
> >   -object 
> > '{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}'
> > 
> > And I got error:
> > qemu-system-x86_64: -object 
> > {"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}: 
> > Parameter 'id' is missing
> > 
> > Do you know why such error happens?
> 
> You have made a mistake somewhere in invoking it ?

Or perhaps you are using a much older QEMU release which lacks JSON
support ?  You need QEMU >= 6.0.0

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 :|




Re: Does "-object" support structured options now?

2024-03-06 Thread Markus Armbruster
Chun Feng Wu  writes:

> Thanks Daniel for your response!
>
> I tried it with the following cmd
>
> qemu-system-x86_64 [other options...] \
>   -object 
> '{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}'
>
> And I got error:
> qemu-system-x86_64: -object 
> {"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}: 
> Parameter 'id' is missing
>
> Do you know why such error happens?

Can't reproduce the error.




Re: Does "-object" support structured options now?

2024-03-06 Thread Daniel P . Berrangé
On Wed, Mar 06, 2024 at 02:33:05PM +, Chun Feng Wu wrote:
> Thanks Daniel for your response!
> 
> I tried it with the following cmd
> 
> qemu-system-x86_64 [other options...] \
>   -object 
> '{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}'
> 
> And I got error:
> qemu-system-x86_64: -object 
> {"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}: 
> Parameter 'id' is missing
> 
> Do you know why such error happens?

You have made a mistake somewhere in invoking it ?

The first command line you show above works fine when i test it myself.

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 :|




RE: Does "-object" support structured options now?

2024-03-06 Thread Chun Feng Wu
Thanks Daniel for your response!

I tried it with the following cmd

qemu-system-x86_64 [other options...] \
  -object 
'{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}'

And I got error:
qemu-system-x86_64: -object 
{"qom-type":"throttle-group","id":"limits0","limits":{"iops-total":200}}: 
Parameter 'id' is missing

Do you know why such error happens?


--
Thanks and Regards,

Wu


From: Daniel P. Berrangé 
Date: Monday, March 4, 2024 at 16:06
To: Chun Feng Wu 
Cc: qemu-devel@nongnu.org 
Subject: [EXTERNAL] Re: Does "-object" support structured options now?
On Mon, Mar 04, 2024 at 06:43:19AM +, Chun Feng Wu wrote:
> Hi,
>
> I noticed that throttle-group can be created with “-object”, however, per 
> qemu doc(https://github.com/qemu/qemu/blob/master/docs/throttle.txt ), 
> “-object” doesn’t support structured options at that moment:
>
> “
> A throttle-group can also be created with the -object command line
> option but at the moment there is no way to pass a 'limits' parameter
> that contains a ThrottleLimits structure. The solution is to set the
> individual values directly, like in this example:
>
>-object throttle-group,id=group0,x-iops-total=1000,x-bps-write=2097152
>
> Note however that this is not a stable API (hence the 'x-' prefixes) and
> will disappear when -object gains support for structured options and
> enables use of 'limits'.
> “
>
> Does anybody know if the latest qemu code still lacks of such
> support(structured options for -object)? If so, is there any
> plan to support it(instead of non-stable API)?

-object supports JSON syntax these days so any QAPI structure can be
expressed no matter how complex.


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  :|


Re: Does "-object" support structured options now?

2024-03-04 Thread Daniel P . Berrangé
On Mon, Mar 04, 2024 at 06:43:19AM +, Chun Feng Wu wrote:
> Hi,
> 
> I noticed that throttle-group can be created with “-object”, however, per 
> qemu doc(https://github.com/qemu/qemu/blob/master/docs/throttle.txt), 
> “-object” doesn’t support structured options at that moment:
> 
> “
> A throttle-group can also be created with the -object command line
> option but at the moment there is no way to pass a 'limits' parameter
> that contains a ThrottleLimits structure. The solution is to set the
> individual values directly, like in this example:
> 
>-object throttle-group,id=group0,x-iops-total=1000,x-bps-write=2097152
> 
> Note however that this is not a stable API (hence the 'x-' prefixes) and
> will disappear when -object gains support for structured options and
> enables use of 'limits'.
> “
> 
> Does anybody know if the latest qemu code still lacks of such
> support(structured options for -object)? If so, is there any
> plan to support it(instead of non-stable API)?

-object supports JSON syntax these days so any QAPI structure can be
expressed no matter how complex.


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 :|