From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59462) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XXXC3-0006Hy-OT for qemu-devel@nongnu.org; Fri, 26 Sep 2014 11:12:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XXXBt-0004mV-Lw for qemu-devel@nongnu.org; Fri, 26 Sep 2014 11:12:23 -0400 Received: from mail-wi0-x233.google.com ([2a00:1450:400c:c05::233]:39052) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XXXBt-0004bn-Fp for qemu-devel@nongnu.org; Fri, 26 Sep 2014 11:12:13 -0400 Received: by mail-wi0-f179.google.com with SMTP id d1so11821086wiv.6 for ; Fri, 26 Sep 2014 08:12:07 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <54258244.2090900@redhat.com> Date: Fri, 26 Sep 2014 17:12:04 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1409344310-5441-1-git-send-email-ehabkost@redhat.com> In-Reply-To: <1409344310-5441-1-git-send-email-ehabkost@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v2 00/17] QOMify accelerator code List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost , qemu-devel@nongnu.org Cc: Michael Mueller , "Michael S. Tsirkin" , Marcel Apfelbaum , Alexander Graf , Christian Borntraeger , "Jason J. Herne" , =?UTF-8?B?QW5kcmVhcyBGw6Ry?= =?UTF-8?B?YmVy?= Il 29/08/2014 22:31, 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 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 > Cc: Christian Borntraeger > Cc: Alexander Graf > Cc: "Jason J. Herne" > Cc: Paolo Bonzini > Cc: Andreas Färber > Cc: Marcel Apfelbaum > Cc: "Michael S. Tsirkin" > > 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: 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 > accel: Save AccelState on MachineState when initializing > kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct > > arch_init.c | 5 -- > hw/core/Makefile.objs | 1 + > hw/core/accel.c | 157 +++++++++++++++++++++++++++++++++++++++++++++ > include/hw/accel.h | 62 ++++++++++++++++++ > include/hw/boards.h | 1 + > include/hw/xen/xen.h | 1 - > include/qemu/typedefs.h | 3 + > 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 hw/core/accel.c > create mode 100644 include/hw/accel.h > Just few small remarks, otherwise looks good. Thanks! Paolo