On Wed, Apr 18, 2012 at 01:11:04AM +0200, Andreas Färber wrote:
> Hello,
> 
> This series introduces some QOM properties for X86CPU, so that our built-in
> init code exercises the same code paths as QMP, as suggested by Eduardo:
> * "family",
> * "model",
> * "stepping" and
> * "model-id" (rather than "model_id")
> This QOM'ifies my previously introduced helper functions, adding getters.
> 
> In the same spirit I've also introduced numeric QOM properties for:
> * "level"
> * "xlevel"
> * "tsc-frequency" (rather than "tsc_freq")
> Being uint32_t, "level" and "xlevel" would benefit from fixed-width visitors,
> as introduced in Michael's series. It seems his v4 was neither applied
> nor commented on and only some parts were integrated into Paolo's large
> rush-rush series... Would be nice to see Michael's full series merged soon!
Thanks for the advertising :). From what I can tell the main conflict
with Paolo's series is:

qdev: switch property accessors to fixed-width visitor interfaces

So if I resent with that patch dropped and let Paolo carry it in his
patchset I think he'd still be able to rebase clearly and you could drop some
of your TODOs. I'll rebase/resend those tomorrow if you think that sounds
reasonable.

> 
> Further I've prepared one QOM property that's currently unused:
> * "vendor" (converting three words to string and back seemed too much 
> overhead)
> 
> By constrast, the HyperV -cpu property "hv_spinlocks" and flags "hv_relaxed"
> and "hv_vapic" do not seem to be per-CPU properties.
> 
> Note that these properties are still somewhat orthogonal to the feature flags
> that Jinsong and Jan were discussing for machine compatibility IIUC. I'm 
> hoping
> that some x86 guru can come up with a sensible follow-up for that. :-)
> Maybe bool properties per feature on an as-needed basis?
> 
> Available from:
> git://github.com/afaerber/qemu-cpu.git qom-cpu-x86-prop.v1
> https://github.com/afaerber/qemu-cpu/commits/qom-cpu-x86-prop.v1
> 
> Regards,
> Andreas
> 
> Cc: Anthony Liguori <anth...@codemonkey.ws>
> Cc: Jan Kiszka <jan.kis...@siemens.com>
> Cc: Igor Mammedov <imamm...@redhat.com>
> Cc: Liu Jinsong <jinsong....@intel.com>
> Cc: Lai Jiangshan <la...@cn.fujitsu.com>
> Cc: Vasilis Liaskovitis <vasilis.liaskovi...@profitbricks.com>
> Cc: Eduardo Habkost <ehabk...@redhat.com>
> Cc: Michael Roth <mdr...@linux.vnet.ibm.com>
> Cc: Paolo Bonzini <pbonz...@redhat.com>
> Cc: Vadim Rozenfeld <vroze...@redhat.com>
> 
> Andreas Färber (15):
>   target-i386: Fix x86_cpuid_set_model_id()
>   target-i386: Pass X86CPU to cpu_x86_register()
>   target-i386: Add range check for -cpu ,family=x
>   target-i386: Add "family" property to X86CPU
>   target-i386: Add "model" property to X86CPU
>   target-i386: Add "stepping" property to X86CPU
>   target-i386: Add "model-id" property to X86CPU
>   target-i386: Add property getter for CPU family
>   target-i386: Add property getter for CPU model
>   target-i386: Add property getter for CPU stepping
>   target-i386: Add property getter for CPU model-id
>   target-i386: Introduce "level" property for X86CPU
>   target-i386: Introduce "xlevel" property for X86CPU
>   target-i386: Prepare "vendor" property for X86CPU
>   target-i386: Introduce "tsc-frequency" property for X86CPU
> 
>  target-i386/cpu.c    |  319 
> +++++++++++++++++++++++++++++++++++++++++++++++---
>  target-i386/cpu.h    |    2 +-
>  target-i386/helper.c |    2 +-
>  3 files changed, 303 insertions(+), 20 deletions(-)
> 
> -- 
> 1.7.7
> 

Reply via email to