From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38639) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bmYLf-00072A-Pp for qemu-devel@nongnu.org; Tue, 20 Sep 2016 23:37:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bmYLa-0003WQ-IW for qemu-devel@nongnu.org; Tue, 20 Sep 2016 23:37:26 -0400 Date: Wed, 21 Sep 2016 13:20:57 +1000 From: David Gibson Message-ID: <20160921032057.GU20488@umbus> References: <20160830010247.93152-1-nwhitehorn@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="5OY1VMnxNaoJKAjw" Content-Disposition: inline In-Reply-To: <20160830010247.93152-1-nwhitehorn@freebsd.org> Subject: Re: [Qemu-devel] [Qemu-ppc] [PATCH] Enable H_CLEAR_MOD and H_CLEAR_REF hypercalls on KVM/PPC64. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Nathan Whitehorn Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org --5OY1VMnxNaoJKAjw Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Aug 30, 2016 at 01:02:47AM +0000, Nathan Whitehorn wrote: > These are mandatory per PAPR and available on Linux 4.3 and newer kernels= =2E The calls in question are required to run FreeBSD guests with reasonabl= e performance, so enable them if possible. >=20 > Signed-off-by: Nathan Whitehorn Applied to ppc-for-2.8, thanks. Please CC me directly on patches if you want a faster response - I only occasionally have time to look through the lists for things. > --- > hw/ppc/spapr.c | 3 +++ > target-ppc/kvm.c | 6 ++++++ > target-ppc/kvm_ppc.h | 1 + > 3 files changed, 10 insertions(+) >=20 > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c > index 30d6800..d41f1a5 100644 > --- a/hw/ppc/spapr.c > +++ b/hw/ppc/spapr.c > @@ -1857,6 +1857,9 @@ static void ppc_spapr_init(MachineState *machine) > /* Enable H_LOGICAL_CI_* so SLOF can talk to in-kernel devices */ > kvmppc_enable_logical_ci_hcalls(); > kvmppc_enable_set_mode_hcall(); > + > + /* H_CLEAR_MOD/_REF are mandatory in PAPR, but off by default */ > + kvmppc_enable_clear_ref_mod_hcalls(); > } > =20 > /* allocate RAM */ > diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c > index dcb68b9..0e64a46 100644 > --- a/target-ppc/kvm.c > +++ b/target-ppc/kvm.c > @@ -2055,6 +2055,12 @@ void kvmppc_enable_set_mode_hcall(void) > kvmppc_enable_hcall(kvm_state, H_SET_MODE); > } > =20 > +void kvmppc_enable_clear_ref_mod_hcalls(void) > +{ > + kvmppc_enable_hcall(kvm_state, H_CLEAR_REF); > + kvmppc_enable_hcall(kvm_state, H_CLEAR_MOD); > +} > + > void kvmppc_set_papr(PowerPCCPU *cpu) > { > CPUState *cs =3D CPU(cpu); > diff --git a/target-ppc/kvm_ppc.h b/target-ppc/kvm_ppc.h > index 5461d10..33b7ed2 100644 > --- a/target-ppc/kvm_ppc.h > +++ b/target-ppc/kvm_ppc.h > @@ -24,6 +24,7 @@ int kvmppc_get_hypercall(CPUPPCState *env, uint8_t *buf= , int buf_len); > int kvmppc_set_interrupt(PowerPCCPU *cpu, int irq, int level); > void kvmppc_enable_logical_ci_hcalls(void); > void kvmppc_enable_set_mode_hcall(void); > +void kvmppc_enable_clear_ref_mod_hcalls(void); > void kvmppc_set_papr(PowerPCCPU *cpu); > int kvmppc_set_compat(PowerPCCPU *cpu, uint32_t cpu_version); > void kvmppc_set_mpic_proxy(PowerPCCPU *cpu, int mpic_proxy); --=20 David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson --5OY1VMnxNaoJKAjw Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJX4fyZAAoJEGw4ysog2bOS1KAP/i7bv8A+LEYjKJZJ6Yb+SKhx qJWq5oEeMC11/pmz13niE72DP6nt15i2c7VjbGszIGhmseNV7kcRhqxvzpATN2oE +erU7wusbHnTjhSLITSd03LFhXsXfgYildw84MNqSS5JHLbj+34PmyE3j5pWCxMQ NDopTe39udmrPcuaCVURSojWbjiqzo9FDu0AtOPLwF6LoEP9awpjtKMUirxmQEut jL585VU64v6FMKbIBaxh0yHK6HZc2vPUDGfNOgKRLOVActoC3ByrBFPga+aZhGbo GJwxi2OXN6mKYbZvZrRKFPDx2JerYTZBDmqqXKwFWjiXkq4Ne18uBKLl7hbJLNuq z0By5lOVPPO9uoWxS2JSNSNIl8nLlxKG+V2DZt8tSzMv0T4q+8aVqosCpHRpW1Og JK4CCwQm80CCx/vkRztzHXo8ivpn0lHY3cAV701cxM1bXV2s5fm7ZNb9X98YcGZM VaMvcRNcejxuhFW3c9PxP43kVMlfDZI7GhFprAL9gdPRZTtLDhUkfAd0ff8xPsfQ unQSUJB8k/hJw29E45kS32pyUX3FgUDLdczXxmV6WtaCbBUqHyS0y3q31LLa9zUX oQAGfBvFvMjSVuy5xS84zAT/UgnhODqZn091BPPAYQE4ae6r7s9ADAZ6SCzSiWSt dCLBPo8mYG1HPQDpKgu6 =oCjd -----END PGP SIGNATURE----- --5OY1VMnxNaoJKAjw--