qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH v6] spapr: Enable ISA 3.0 MMU mode selection via C


From: David Gibson
Subject: Re: [Qemu-ppc] [PATCH v6] spapr: Enable ISA 3.0 MMU mode selection via CAS
Date: Thu, 23 Mar 2017 15:24:29 +1100
User-agent: Mutt/1.8.0 (2017-02-23)

On Thu, Mar 23, 2017 at 02:46:00PM +1100, Sam Bobroff wrote:
> Add the new node, /chosen/ibm,arch-vec-5-platform-support to the
> device tree. This allows the guest to determine which modes are
> supported by the hypervisor.
> 
> Update the option vector processing in h_client_architecture_support()
> to handle the new MMU bits. This allows guests to request hash or
> radix mode and QEMU to create the guest's HPT at this time if it is
> necessary but hasn't yet been done.  QEMU will terminate the guest if
> it requests an unavailable mode, as required by the architecture.
> 
> Extend the ibm,pa-features node with the new ISA 3.0 values
> and set the radix bit if KVM supports radix mode. This probably won't
> be used directly by guests to determine the availability of radix mode
> (that is indicated by the new node added above) but the architecture
> requires that it be set when the hardware supports it.
> 
> If QEMU is using KVM, and KVM is capable of running in radix mode,
> guests can be run in real-mode without allocating a HPT (because KVM
> will use a minimal RPT). So in this case, we avoid creating the HPT
> at reset time and later (during CAS) create it if it is necessary.
> 
> ISA 3.0 guests will now begin to call h_register_process_table(),
> which has been added previously.
> 
> Signed-off-by: Sam Bobroff <address@hidden>
> Signed-off-by: David Gibson <address@hidden>
> ---
> Hi Qemu-ppc,
> 
> Testing has discovered a bug in my recently posted patch set, "ISA 3.00 KVM
> guest support".
> 
> This is a re-send of the affected patch from that set (which was patch 4/7 at
> v5 so I have marked this as v6) with a fix to correct the problem. The problem
> is that when running on a host with a KVM that doesn't provide either new hash
> or new radix support, QEMU will error out when it should successfully run.
> 
> The fix is itself small (removal of an assert() from
> spapr_dt_ov5_platform_support() and extending a check in
> h_client_architecture_support()).

Applied to ppc-for-2.10, replacing the earlier version.

-- 
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

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]