[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH for-2.13 03/10] target/ppc: Remove unnecessary ini
From: |
Cédric Le Goater |
Subject: |
Re: [Qemu-ppc] [PATCH for-2.13 03/10] target/ppc: Remove unnecessary initialization of LPCR_UPRT |
Date: |
Wed, 25 Apr 2018 11:52:18 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 |
On 04/17/2018 09:17 AM, David Gibson wrote:
> In cpu_ppc_set_papr() the UPRT and GTSE bits of the LPCR are initialized
> based on on ppc64_radix_guest(). Which seems reasonable, except that
> ppc64_radix_guest() is based on spapr->patb_entry which is only set up
> in spapr_machine_reset, called much later than cpu_ppc_set_papr().
>
> So the initialization here is pointless. The base cpu initialization
> already sets a value that's good enough until the guest uses an hcall to
> configure it's preferred MMU mode.
>
> Signed-off-by: David Gibson <address@hidden>
> ---
> target/ppc/translate_init.c | 16 ----------------
> 1 file changed, 16 deletions(-)
>
> diff --git a/target/ppc/translate_init.c b/target/ppc/translate_init.c
> index bb79d23b50..14f346f441 100644
> --- a/target/ppc/translate_init.c
> +++ b/target/ppc/translate_init.c
> @@ -8897,22 +8897,6 @@ void cpu_ppc_set_papr(PowerPCCPU *cpu,
> PPCVirtualHypervisor *vhyp)
> lpcr->default_value &= ~LPCR_RMLS;
> lpcr->default_value |= 1ull << LPCR_RMLS_SHIFT;
>
> - if (env->mmu_model == POWERPC_MMU_3_00) {
> - /* By default we choose legacy mode and switch to new hash or radix
> - * when a register process table hcall is made. So disable process
> - * tables and guest translation shootdown by default
> - *
> - * Hot-plugged CPUs inherit from the guest radix setting under
> - * KVM but not under TCG. Update the default LPCR to keep new
> - * CPUs in sync when radix is enabled.
> - */
This is breaking CPU hotplug under TCG. Should we reintroduce the same
settings in spapr_cpu_reset() now ?
Thanks,
C.
> - if (ppc64_radix_guest(cpu)) {
> - lpcr->default_value |= LPCR_UPRT | LPCR_GTSE;
> - } else {
> - lpcr->default_value &= ~(LPCR_UPRT | LPCR_GTSE);
> - }
> - }
> -
> /* Only enable Power-saving mode Exit Cause exceptions on the boot
> * CPU. The RTAS command start-cpu will enable them on secondaries.
> */
>
[Qemu-ppc] [PATCH for-2.13 07/10] spapr: Make a helper to set up cpu entry point state, David Gibson, 2018/04/17
[Qemu-ppc] [PATCH for-2.13 09/10] target/ppc: Don't bother with MSR_EP in cpu_ppc_set_papr(), David Gibson, 2018/04/17