Il 26/09/2014 22:45, Eduardo Habkost ha scritto:
> This is an attempt to convert the accel initialization and registration code
> to be QOM-based. Some use cases for this are:
> 
>  * Isolating KVM-specific CPU initialization and compatibility code;
>  * Use compat_props to implement accelrator-specific compatibility code
>    on machine-types;
>  * Returning accelerator-specific information on the "query-cpu-definitions"
>    QMP command (e.g. "runnable" information; CPU features).
> 
> Changes v2 -> v3:
>  * Rename hw/core/accel.c to accel.c
>  * Rename include/hw/accel.h to include/sysemu/accel.h
>  * Report unknown accelerator as "not found" instead of "does not exist"
>  * Squashed "accel: Create accel object when initializing machine" and
>    "accel: Save AccelState on MachineState when initializing" in a single
>    patch
> 
> Changes v1 -> v2:
>  * Remove the TYPE_X86_ACCEL interface and KVM-specific changes, by now
>    (they will be submitted later).
>  * Introduce ACCEL_CLASS_NAME(s) macro.
> 
> Cc: Michael Mueller <m...@linux.vnet.ibm.com>
> Cc: Christian Borntraeger <borntrae...@de.ibm.com>
> Cc: Alexander Graf <ag...@suse.de>
> Cc: "Jason J. Herne" <jjhe...@linux.vnet.ibm.com>
> Cc: Paolo Bonzini <pbonz...@redhat.com>
> Cc: Andreas Färber <afaer...@suse.de>
> Cc: Marcel Apfelbaum <marce...@redhat.com>
> Cc: "Michael S. Tsirkin" <m...@redhat.com>
> 
> Eduardo Habkost (17):
>   vl.c: Small coding style fix
>   accel: Move accel code to accel.c
>   accel: Create AccelType typedef
>   accel: Simplify configure_accelerator() using AccelType *acc variable
>   accel: Move accel name lookup to separate function
>   accel: Use QOM classes for accel types
>   accel: Make AccelClass.available() optional
>   accel: Report unknown accelerator as "not found" instead of "does not
>     exist"
>   accel: Move KVM accel registration to kvm-all.c
>   accel: Move Xen registration code to xen-common.c
>   accel: Move qtest accel registration to qtest.c
>   accel: Remove tcg_available() function
>   accel: Move accel init/allowed code to separate function
>   accel: Rename 'init' method to 'init_machine'
>   accel: Pass MachineState object to accel init functions
>   accel: Create accel object when initializing machine
>   kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct
> 
>  Makefile.objs              |   1 +
>  accel.c                    | 157 
> +++++++++++++++++++++++++++++++++++++++++++++
>  arch_init.c                |   5 --
>  include/hw/boards.h        |   1 +
>  include/hw/xen/xen.h       |   1 -
>  include/qemu/typedefs.h    |   3 +
>  include/sysemu/accel.h     |  62 ++++++++++++++++++
>  include/sysemu/arch_init.h |   1 -
>  include/sysemu/kvm.h       |   2 -
>  include/sysemu/qtest.h     |   1 -
>  kvm-all.c                  |  40 ++++++++++--
>  kvm-stub.c                 |   5 --
>  qtest.c                    |  27 +++++++-
>  vl.c                       |  83 +-----------------------
>  xen-common-stub.c          |   6 --
>  xen-common.c               |  25 +++++++-
>  16 files changed, 311 insertions(+), 109 deletions(-)
>  create mode 100644 accel.c
>  create mode 100644 include/sysemu/accel.h
> 

Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>

Reply via email to