From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43215) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1agl4m-0005kq-Mb for qemu-devel@nongnu.org; Thu, 17 Mar 2016 23:27:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1agl4l-0000t8-Lk for qemu-devel@nongnu.org; Thu, 17 Mar 2016 23:27:48 -0400 From: Peter Xu Date: Fri, 18 Mar 2016 11:27:29 +0800 Message-Id: <1458271654-23706-1-git-send-email-peterx@redhat.com> Subject: [Qemu-devel] [PATCH v5 0/5] ARM: add query-gic-capabilities SMP command List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: wei@redhat.com, peter.maydell@linaro.org, drjones@redhat.com, mdroth@linux.vnet.ibm.com, armbru@redhat.com, peterx@redhat.com, abologna@redhat.com, qemu-arm@nongnu.org v5 changes: - patch 2: moved to target-arm/monitor.c (from target-arm/machine.c) [Peter] - patch 3: splitted into three patches: [all from Peter's comments] - patch 3 (new): leverage kvm_arm_create_scratch_host_vcpu(), tiny enhancement of old one to suite our need - patch 4: introduce kvm_support_device() in kvm-all.c - patch 5: do the implementation. v4 changes: - all: rename query-gic-capability to query-gic-capabilities [Andrea] - patch 3: rename helper function to kvm_support_device, make it inline and lighter. [Drew] v3 changes: - patch 2: remove func declaration, add qmp header [Drew] - patch 3: being able to detect KVM GIC capabilities even without kvm enabled [Andrea]: this is a little bit hacky, need some more review on this. v2 changes: - result layout change: use array and dict for the capability bits rather than a single array of strings [Andrea/Markus] - spelling out what GIC is in doc [Eric] This patch is to add ARM-specific command "query-gic-capability". The new command can report which kind of GIC device the host/QEMU support. The returned result is in the form of array. Sample command and output: {"execute": "query-gic-capability"} {"return": [{"emulated": false, "version": 3, "kernel": false}, {"emulated": true, "version": 2, "kernel": true}]} Testing: Smoke tests on both x86 (emulated) and another moonshot ARM server. Peter Xu (5): arm: qmp: add GICCapability struct arm: qmp: add query-gic-capabilities interface arm: enhance kvm_arm_create_scratch_host_vcpu kvm: add kvm_support_device() helper function arm: implement query-gic-capabilities include/sysemu/kvm.h | 9 +++++ kvm-all.c | 15 +++++++++ monitor.c | 8 +++++ qapi-schema.json | 33 +++++++++++++++++++ qmp-commands.hx | 26 +++++++++++++++ scripts/qapi.py | 1 + target-arm/Makefile.objs | 2 +- target-arm/kvm.c | 10 +++++- target-arm/kvm_arm.h | 6 ++-- target-arm/monitor.c | 86 ++++++++++++++++++++++++++++++++++++++++++++++++ 10 files changed, 192 insertions(+), 4 deletions(-) create mode 100644 target-arm/monitor.c -- 2.4.3