qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [PATCH v5 0/7] ISA 3.00 KVM guest support


From: David Gibson
Subject: Re: [Qemu-ppc] [PATCH v5 0/7] ISA 3.00 KVM guest support
Date: Mon, 20 Mar 2017 17:11:14 +1100
User-agent: Mutt/1.8.0 (2017-02-23)

On Mon, Mar 20, 2017 at 10:46:42AM +1100, Sam Bobroff wrote:
> 
> ISA 3.00 KVM guest support
> 
> Notes for v5:
> 
> * Patch "spapr: Only setup HPT if necessary" has been folded into "target/ppc:
>   Implement H_REGISTER_PROCESS_TABLE H_CALL".
> 
> Because KVM will soon provide the necessary infrastructure for KVM guests to
> run on POWER9 CPUs, we can now start exploiting this new functionality from
> QEMU. See:
> https://lists.ozlabs.org/pipermail/linuxppc-dev/2017-January/153433.html
> 
> This set aims to support only the following scenarios:
> * A POWER9 host running in radix mode, running a guest in radix mode.
> * A POWER9 host running in hash mode, running a guest in hash mode.
> * A POWER9 host running in hash mode, running a guest in legacy(+) mode.
> (+) Where legacy means that the guest does not support ISA 3.00.
> 
> Hash or radix mode for the host is controlled via the "disable_radix" kernel
> command line parameter: the host will use radix unless disable_radix is given.
> For the guest it should be automatically selected to match the host.
> 
> Bad legacy guests: There are some recent kernels (e.g. 4.9) that will, when 
> run
> as a KVM guest and if the ibm,pa-features entry in the device tree has the
> Radix MMU bit set, attempt to initialize the MMU as if they were a host (which
> will cause them to crash). To avoid exposing this problem, the Radix MMU bit
> is removed from ibm,pa-features when a legacy guest is detected.
> 
> Notes:
> * This set is based on David Gibson's ppc-for-2.10 branch, available
> in his tree on github at https://github.com/dgibson/qemu.git .
> * This set sits on top of Suraj's recent patch set titled "target/ppc:
> Implement POWER9 pseries TCG legacy support", archved here:
> https://lists.gnu.org/archive/html/qemu-ppc/2017-03/msg00004.html .
> * I have merged my patch that implements with h_register_process_table()
> with the patches Suraj's work that implement the same function for TCG (to 
> make
> integration easier). The patches are now:
>     * target/ppc: Add new H-CALL shells for in memory table translation
>     * target/ppc: Implement H_REGISTER_PROCESS_TABLE H_CALL
> * The set itself and Suraj's related work are availbe in a branch called 
> p9-cas,
> from my tree on github at https://github.com/sambltc/qemu.git .
> 
> Patch set changelog follows:

Ok, I've applied these to ppc-for-2.10, including the uninitialized
variable fix you sent afterwards.  I also corrected a missing
prototype in the same patch.

As discussed on IRC, I think there's still some confusion as to
exactly what should be managing the patb_entry field, but that can be
fixed afterwards.

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