From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45500) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aNf1o-000527-6l for qemu-devel@nongnu.org; Mon, 25 Jan 2016 06:09:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aNf1m-0002NH-UI for qemu-devel@nongnu.org; Mon, 25 Jan 2016 06:09:48 -0500 Date: Mon, 25 Jan 2016 22:10:40 +1100 From: David Gibson Message-ID: <20160125111040.GH32205@voom.redhat.com> References: <1453698952-32092-1-git-send-email-david@gibson.dropbear.id.au> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="OgApRN/oydYDdnYz" Content-Disposition: inline In-Reply-To: <1453698952-32092-1-git-send-email-david@gibson.dropbear.id.au> Subject: Re: [Qemu-devel] [PATCH 00/10] Clean up page size handling for ppc 64-bit hash MMUs with TCG List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: benh@kernel.crashing.org Cc: lvivier@redhat.com, thuth@redhat.com, aik@ozlabs.ru, agraf@suse.de, qemu-devel@nongnu.org, qemu-ppc@nongnu.org --OgApRN/oydYDdnYz Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jan 25, 2016 at 04:15:42PM +1100, David Gibson wrote: > Encoding of page sizes on 64-bit hash MMUs for Power is rather arcane, > involving control bits in both the SLB and HPTE. At present we > support a few of the options, but far fewer than real hardware. >=20 > We're able to get away with that in practice, because guests use a > device tree property to determine which page sizes are available and > we are setting that to match. However, the fact that the actual code > doesn't necessarily what we put into the table of available page sizes > is another ugliness. >=20 > This series makes a number of cleanups to the page size handling. The > upshot is that afterwards the softmmu code operates off the same page > size encoding table that is advertised to the guests, ensuring that > they will be in sync. >=20 > Finally, we extend the table of allowed sizes for POWER7 and POWER8 to > include the options allowed in hardware (including MPSS). We can fix > other hash MMU based CPUs in future if anyone cares enough. >=20 > Please review, and I'll fold into ppc-for-2.6 for my next pull. Bother, somehow missed a serious bug in here that's causing oops-on-boot. Sorry, still tracking it down. >=20 > Changes since RFC: > * Moved lookup of SLB encodings table from SLB lookup time to SLB > store time >=20 > David Gibson (10): > target-ppc: Remove unused kvmppc_read_segment_page_sizes() stub > target-ppc: Convert mmu-hash{32,64}.[ch] from CPUPPCState to > PowerPCCPU > target-ppc: Rework ppc_store_slb > target-ppc: Rework SLB page size lookup > target-ppc: Use actual page size encodings from HPTE > target-ppc: Remove unused mmu models from ppc_tlb_invalidate_one > target-ppc: Split 44x tlbiva from ppc_tlb_invalidate_one() > target-ppc: Add new TLB invalidate by HPTE call for hash64 MMUs > target-ppc: Helper to determine page size information from hpte alone > target-ppc: Allow more page sizes for POWER7 & POWER8 in TCG >=20 > hw/ppc/spapr_hcall.c | 102 ++++------------ > target-ppc/cpu.h | 1 + > target-ppc/helper.h | 1 + > target-ppc/kvm.c | 2 +- > target-ppc/kvm_ppc.h | 5 - > target-ppc/machine.c | 20 ++++ > target-ppc/mmu-hash32.c | 68 ++++++----- > target-ppc/mmu-hash32.h | 30 ++--- > target-ppc/mmu-hash64.c | 286 ++++++++++++++++++++++++++++++++------= ------ > target-ppc/mmu-hash64.h | 30 +++-- > target-ppc/mmu_helper.c | 59 ++++----- > target-ppc/translate.c | 2 +- > target-ppc/translate_init.c | 32 +++++ > 13 files changed, 389 insertions(+), 249 deletions(-) >=20 --=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 --OgApRN/oydYDdnYz Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJWpgKwAAoJEGw4ysog2bOSd00P+wWC2bpdgdp+EgtYEVZCPiB8 n6/0ewJ5CUb7DIZn5aVTZKcngzJXqoQ/o7jMP1lmw+YhfmJClZMl34gRsnQZ17Af j5srkmjUlQQL1e3Myy2Om0w10KVj3yDtkl/lKy3sWX9xgBckLzqvlPpNhXIb5vPn d9zPARqNoYsLOwRbxZb0ApZ4zdW7hwKL2/eAWgjLeOhE+zu7wwE4PF5oMcA99dV2 H0QMIMSfNXUo8QaXFbdr2QjLcwWb2K12txMfrYPg3U6igaJN41aW6v9+uaxK35wr zZA+JMyoksKYW0yFpYw7O0cx8Dt9E0wugqflDoHembG0czam0es+jxtd0PrDGVuh TpC0n24uCG7hrbuTJhUw+3wXy58R1/57qOK0jmceSTxt/53WmkhXZ80aL+wodk4w hPVvkCVfaGINcmdc771yLm+uExm3e+rDUo1i2qQk3x1HeHb/GyfwTREgecyJS2cQ TV7eveq2Y8n1EGhy5tNECeFyHbV07nPnwZeeFV2K5y42XOT5RqXVslOaxTHJPQAy /b6zQcXpGvzteSKd1HzRv44MHPU+sf9C5H7/Ef2y4I7SWybDb/txJy0aAkM4ntOj HYawLyTKuzbLyTJxOdsxtPXd6XMhXanFjep+j3pLOa639mYlOt5uqfMRAfUByqdw amg0TDKg8PBz+19BuTZn =u/hp -----END PGP SIGNATURE----- --OgApRN/oydYDdnYz--