Re: [RFC PATCH v3 16/19] qmp: add query-cpu-props-info command
Eric Auger <[email protected]>
| Newsgroups | org.nongnu.qemu-arm,dev.linux.lists.kvmarm,org.nongnu.qemu-devel |
|---|---|
| Message-ID | <[email protected]> |
On 8/18/26 11:46 AM, Khushit Shah wrote: > >> On 14 Aug 2026, at 7:08 PM, Eric Auger <[email protected]> wrote: >> >> !-------------------------------------------------------------------| >> CAUTION: External Email >> >> |-------------------------------------------------------------------! >> >> Hi Khushit, >> >> On 8/5/26 8:47 AM, Khushit Shah wrote: >>>> On 4 Aug 2026, at 12:15 PM, Markus Armbruster <[email protected]> wrote: >>>> >>>> !-------------------------------------------------------------------| >>>> CAUTION: External Email >>>> >>>> |-------------------------------------------------------------------! >>>> >>>> Khushit Shah <[email protected]> writes: >>>> >>>>> Introduce the 'query-cpu-props-info' QMP command. For CPU model >>>>> properties it reports the type (boolean or number) and the set of values >>>>> supported under the active accelerator and host. >>>>> >>>>> For numbers the supported values are expressed as a list of inclusive >>>>> {min, max} ranges; for booleans as the list of allowed true/false >>>>> values. >>>>> >>>>> The command and its return types (CpuPropertyType, CpuPropertyInfo and >>>>> friends) are defined in qapi/machine.json rather than an Arm-specific >>>>> schema, since the concept applies to other targets (e.g. x86, riscv) >>>>> too. Target that do not implement it return an error. >>>>> >>>>> The Arm/KVM implementation spins up a scratch "host" vCPU object, >>>>> walks its QOM properties: SYSREG_ ID-register fields become 'number' >>>>> properties whose ranges come from arm_field_get_supported_values(), >>>>> and the advertised feature toggles become 'boolean' properties. >>>>> >>>>> Signed-off-by: Khushit Shah <[email protected]> >>>> This explains what the command does and how it's implemented. It's >>>> silent on the most important aspect: why do we want the command? What >>>> is its intended purpose? >>> Will add something like: >>> >>> This helps the management stack to discover which values are supported >>> for a given CPU property. This is especially important for non-boolean >>> properties, where knowing that the host has value 'x' does not inherently >>> reveal the full range of valid values supported on the host. >> How does x86 handle this at the moment, they don't have the cmd either? >> How do they currently introspect what are the valid values for a >> specific host? Is it easier for them? > x86 is much simpler, all the cpu features properties are backed by cpuid bits > and assumption is simple, if host value is “true”, “false" is supported, and > if the host value is “false", “true" is not supported. OK thanks! Eric > > Warm Regards, > Khushit >> >> Thanks >> >> Eric >>> >>>