From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33013) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bZEEm-0008Jz-As for qemu-devel@nongnu.org; Mon, 15 Aug 2016 05:31:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bZEEl-00076w-Bp for qemu-devel@nongnu.org; Mon, 15 Aug 2016 05:31:16 -0400 Message-ID: <1471253464.3003.5.camel@redhat.com> From: Andrea Bolognani Date: Mon, 15 Aug 2016 11:31:04 +0200 In-Reply-To: <1471067570-7503-1-git-send-email-wei@redhat.com> References: <1471067570-7503-1-git-send-email-wei@redhat.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH V1 1/1] arm64: Add an option to turn on/off host-backed vPMU support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Wei Huang , qemu-arm@nongnu.org Cc: peter.maydell@linaro.org, drjones@redhat.com, shannon.zhao@linaro.org, qemu-devel@nongnu.org On Sat, 2016-08-13 at 00:52 -0500, Wei Huang wrote: > This patch adds a pmu=3D[on/off] option to enable/disable host vPMU > support in guest VM. There are several reasons to justify this option. > First, host-backed vPMU can be problematic for cross-migration between > different SoC as perf counters are architecture-dependent. It is more > flexible to have an option to turn it on/off. Secondly this option > matches the "pmu" option as supported in libvirt tool. >=C2=A0 > Note that, like "has_el3", the "pmu" option is only made available on > CPUs that support host-backed vPMU. They include: >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0* cortex-a53 + kvm >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0* cortex-a57 + kvm >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0* host + kvm > This option is removed in other configs where it doesn't make sense > (e.g. cortex-a57 + TCG); and the default pmu support is off. This patch > has been tested under both DT/ACPI modes. >=C2=A0 > Signed-off-by: Wei Huang > --- >=C2=A0=C2=A0hw/arm/virt-acpi-build.c |=C2=A0=C2=A02 +- >=C2=A0=C2=A0hw/arm/virt.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0|=C2=A0=C2=A02 +- >=C2=A0=C2=A0target-arm/cpu.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0| 13 +++++++++++++ >=C2=A0=C2=A0target-arm/cpu.h=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0|=C2=A0=C2=A03 ++- >=C2=A0=C2=A0target-arm/cpu64.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= |=C2=A0=C2=A06 ++++++ >=C2=A0=C2=A0target-arm/kvm64.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= | 10 +++++----- >=C2=A0=C2=A06 files changed, 28 insertions(+), 8 deletions(-) Did you already try driving this with libvirt? It should work out of the box. If you haven't, I will do it :) --=C2=A0 Andrea Bolognani / Red Hat / Virtualization