All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/6] cpus: make "-cpu cpux, features" global properties
@ 2016-06-09 17:10 Igor Mammedov
  2016-06-09 17:10 ` [Qemu-devel] [PATCH v2 1/6] target-i386: cpu: consolidate calls of object_property_parse() in x86_cpu_parse_featurestr Igor Mammedov
                   ` (6 more replies)
  0 siblings, 7 replies; 24+ messages in thread
From: Igor Mammedov @ 2016-06-09 17:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, ehabkost, mark.cave-ayland, blauwirbel, qemu-arm,
	pbonzini, rth

Changelog:
  since v1:
    - rebase on top of x86-next tree, which shaves off already applied several patches
      and fixed deps on wrong tree (v1 was against my device_add_cpu tree)
    - add TODO comments
    - set cpu_globals_initialized = true early
    - move error_propagate() to the end of x86_cpu_parse_featurestr()
  since RFC:
    - include "target-i386: Remove xlevel & hv-spinlocks option fixups"
    - use Eduardo's version of:
        target-i386: cpu: consolidate calls of object_property_parse...
    - fix error handling of +-feat
    - add comment why +-feat is special
    - add comment to remove +-feat static vars
    - reuse x86_cpu_class_get_model_name()

Current CLI option -cpu cpux,features serves as template
for all created cpus of type: cpux. However QEMU parses
"features" every time it creates a cpu instance and applies
them to it while doing parsing.

That doesn't work well with -device/device_add infrastructure
as it has no idea about cpu specific hooks that's used for
parsing "features".
In order to make -device/device_add utilize "-cpu features"
template convert it into a set of global properties, so that
every new CPU created will have them applied automatically.

That also allows to parse features only once, instread of
doing it for every CPU instance being created.

Git tree for testing:
  https://github.com/imammedo/qemu.git cpu_parse_into_global_props_V2 
web view:
  https://github.com/imammedo/qemu/commits/cpu_parse_into_global_props_V2


Eduardo Habkost (1):
  target-i386: cpu: consolidate calls of object_property_parse() in
    x86_cpu_parse_featurestr

Igor Mammedov (5):
  target-i386: print obsolete warnings if +-features are used
  target-sparc: cpu: use sparc_cpu_parse_features() directly
  cpu: use CPUClass->parse_features() as convertor to global properties
  arm: virt: parse cpu_model only once
  pc: parse cpu features only once

 hw/arm/virt.c      |  41 ++++++++--------
 hw/i386/pc.c       |  37 +++++++++++----
 include/qom/cpu.h  |   2 +-
 qom/cpu.c          |  38 ++++++++++-----
 target-i386/cpu.c  | 135 +++++++++++++++++++++++++----------------------------
 target-i386/cpu.h  |   1 -
 target-sparc/cpu.c |   7 +--
 7 files changed, 143 insertions(+), 118 deletions(-)

-- 
2.7.0

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

end of thread, other threads:[~2016-07-04 16:45 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-09 17:10 [Qemu-devel] [PATCH v2 0/6] cpus: make "-cpu cpux, features" global properties Igor Mammedov
2016-06-09 17:10 ` [Qemu-devel] [PATCH v2 1/6] target-i386: cpu: consolidate calls of object_property_parse() in x86_cpu_parse_featurestr Igor Mammedov
2016-06-09 17:29   ` Eduardo Habkost
2016-06-09 19:39     ` Eric Blake
2016-06-09 19:50       ` Eduardo Habkost
2016-06-10  7:23       ` Igor Mammedov
2016-06-10  7:24     ` Igor Mammedov
2016-06-09 17:10 ` [Qemu-devel] [PATCH v2 2/6] target-i386: print obsolete warnings if +-features are used Igor Mammedov
2016-06-09 20:22   ` Eduardo Habkost
2016-06-09 17:11 ` [Qemu-devel] [PATCH v2 3/6] target-sparc: cpu: use sparc_cpu_parse_features() directly Igor Mammedov
2016-06-10 11:52   ` Eduardo Habkost
2016-06-09 17:11 ` [Qemu-devel] [PATCH v2 4/6] cpu: use CPUClass->parse_features() as convertor to global properties Igor Mammedov
2016-06-14 19:47   ` [Qemu-devel] Handling errors caused by -global (was Re: [PATCH v2 4/6] cpu: use CPUClass->parse_features() as convertor to global properties) Eduardo Habkost
2016-06-14 21:41     ` Paolo Bonzini
2016-06-14 21:48       ` Eduardo Habkost
2016-06-21 13:24   ` [Qemu-devel] [PATCH v2 4/6] fixup! cpu: use CPUClass->parse_features() as convertor to global properties Igor Mammedov
2016-06-23 15:22     ` Eduardo Habkost
2016-06-09 17:11 ` [Qemu-devel] [PATCH v2 5/6] arm: virt: parse cpu_model only once Igor Mammedov
2016-06-09 17:11 ` [Qemu-devel] [PATCH v2 6/6] pc: parse cpu features " Igor Mammedov
2016-07-04  8:04 ` [Qemu-devel] [PATCH v2 0/6] cpus: make "-cpu cpux, features" global properties Igor Mammedov
2016-07-04 14:01   ` Eduardo Habkost
2016-07-04 14:32     ` Igor Mammedov
2016-07-04 16:21       ` Eduardo Habkost
2016-07-04 16:45         ` Greg Kurz

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.