On Mon, May 27, 2019 at 06:29:44PM +0200, Andrea Bolognani wrote: > On Fri, 2019-05-24 at 15:24 -0300, Eduardo Habkost wrote: > > On Thu, May 23, 2019 at 10:35:24AM +0200, Andrea Bolognani wrote: > > > [...] the above looks good to > > > me as a general direction, but note that you'll have to implement at > > > the very least the query-cpu-model-expansion QMP command for the > > > introspection to work. > > > > Why is query-cpu-model-expansion needed? Isn't > > device-list-properties enough? > > Good question. > > I'll have to check with Jirka, but from playing with both commands > it looks like the latter returns a superset of what the former does, > so for the purpose of figuring out which vector lengths the QEMU > binary recognizes it should be good enough; I suspect, however, that > query-cpu-model-expansion might be (made to be) smarter and for > example not report vector lengths that the underlying hardware > doesn't support, which would be valuable for the purpose of user > friendly error reporting and allowing applications to decide which > vector lengths to request when creating guests.
Yes, query-cpu-model-expansion returns additional information, so it depends on what exactly you are looking for. If you want to know which properties a given QEMU binary supports in the command-line, `device-list-properties` is supposed to be enough. If you need to know which properties can be really enabled in a given host (based on QEMU+KVM+hardware capabilities), you'll need `query-cpu-model-expansion model=max`. -- Eduardo