qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH qom-cpu v10 0/2] target-i386: X86CPU subclasses
@ 2014-02-25  7:36 Andreas Färber
  2014-02-25  7:36 ` [Qemu-devel] [PATCH qom-cpu v10 1/2] target-i386: Prepare CPUClass::class_by_name for X86CPU Andreas Färber
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Andreas Färber @ 2014-02-25  7:36 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Andreas Färber, Eduardo Habkost,
	Anthony Liguori, Igor Mammedov

Hello,

Here's my cleaned up version of slim x86 CPU subclasses.
Second patch didn't get a lot of testing yet.

Loading cpudef is still in main initfn since otherwise the host type
would need to be relocated. Can be cleaned up as follow-ups.

I wonder whether we are intentionally registering the host type even for
!CONFIG_KVM? Instantiating it will then always lead to assertion failure.

Available for testing here:
git://github.com/afaerber/qemu-cpu.git qom-cpu-x86-subclasses.v10
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-x86-subclasses.v10

Regards,
Andreas

v9 -> v10:
* Cleaned up documentation comments.
* Prepended patch to implement CPUClass::class_by_name(), rebased on it.
* Cleaned up naming (..._class_init, ..._initfn, type vs. class).
* Dropped duplicate white line.
* Dropped unnecessary .abstract, .instance_size, .class_size fields.
* Aligned model type registration with other targets by having the
  registration function operate on one model only.
* Relocated cpudef-based types to after x86_cpu_load_cpudef().
* Moved assignment of cpu_def into cpudef-specific class_init.

(went through various hands, last ehabkost's)

v2 -> v3:
* Instead of re-coding all CPU definitions as class_init functions, leave
  the built-in definition array in place and place x86_def_t in the class.
* Use kvm_arch_init() hook to assure class_init succeeds for -cpu host.
  Suggested by Eduardo.

v1-> v2:
* Instead of turning x86_def_t into X86CPUInfo to initialize classes,
  drop it completely and register types manually with customizable TypeInfos
* Use new list facilities for printing -cpu ? models
* Adopt new name scheme suggested by Eduardo and ideas from my alpha series
* Keep short names in -cpu ? output for alignment reasons
* Merge cpu_x86_init() into cpu.c:cpu_x86_register()
* Append patch showing Haswell as subclass of SandyBridge

Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Anthony Liguori <anthony@codemonkey.ws>

Andreas Färber (1):
  target-i386: Prepare CPUClass::class_by_name for X86CPU

Eduardo Habkost (1):
  target-i386: X86CPU model subclasses

 target-i386/cpu-qom.h |  15 ++++
 target-i386/cpu.c     | 197 +++++++++++++++++++++++++++++++-------------------
 2 files changed, 138 insertions(+), 74 deletions(-)

-- 
1.8.4.5

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-03-09 15:50 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-25  7:36 [Qemu-devel] [PATCH qom-cpu v10 0/2] target-i386: X86CPU subclasses Andreas Färber
2014-02-25  7:36 ` [Qemu-devel] [PATCH qom-cpu v10 1/2] target-i386: Prepare CPUClass::class_by_name for X86CPU Andreas Färber
2014-03-04 19:48   ` Eduardo Habkost
2014-02-25  7:36 ` [Qemu-devel] [PATCH qom-cpu v10 2/2] target-i386: X86CPU model subclasses Andreas Färber
2014-03-04 19:53   ` Eduardo Habkost
2014-03-09 15:49     ` Andreas Färber
2014-03-03 16:50 ` [Qemu-devel] [PATCH qom-cpu v10 0/2] target-i386: X86CPU subclasses Andreas Färber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).