[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 2/6] spapr: Treat Hardware Transactional Memory (H
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH 2/6] spapr: Treat Hardware Transactional Memory (HTM) as an optional capability |
Date: |
Tue, 19 Dec 2017 11:35:08 +1100 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Mon, Dec 18, 2017 at 12:10:41PM +0100, Greg Kurz wrote:
> On Mon, 18 Dec 2017 20:20:20 +1100
> David Gibson <address@hidden> wrote:
>
> > This adds an spapr capability bit for Hardware Transactional Memory. It is
> > enabled by default for pseries-2.11 and earlier machine types. with POWER8
> > or later CPUs (as it must be, since earlier qemu versions would implicitly
> > allow it). However it is disabled by default for the latest pseries-2.12
> > machine type.
> >
> > This means that with the latest machine type, HTM will not be available,
> > regardless of CPU, unless it is explicitly enabled on the command line.
> > That change is made on the basis that:
> >
> > * This way running with -M pseries,accel=tcg will start with whatever cpu
> > and will provide the same guest visible model as with accel=kvm.
> > - More specifically, this means existing make check tests don't have
> > to be modified to use cap-htm=off in order to run with TCG
> >
> > * We hope to add a new "HTM without suspend" feature in the not too
> > distant future which could work on both POWER8 and POWER9 cpus, and
> > could be enabled by default.
> >
> > * Best guesses suggest that future POWER cpus may well only support the
> > HTM-without-suspend model, not the (frankly, horribly overcomplicated)
> > POWER8 style HTM with suspend.
> >
> > * Anecdotal evidence suggests problems with HTM being enabled when it
> > wasn't wanted are more common than being missing when it was.
> >
> > Signed-off-by: David Gibson <address@hidden>
> > ---
> > hw/ppc/spapr.c | 15 ++++++++++-----
> > hw/ppc/spapr_caps.c | 29 ++++++++++++++++++++++++++++-
> > include/hw/ppc/spapr.h | 3 +++
> > 3 files changed, 41 insertions(+), 6 deletions(-)
> >
> > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> > index d472baef8d..f8fee8ebcf 100644
> > --- a/hw/ppc/spapr.c
> > +++ b/hw/ppc/spapr.c
> > @@ -253,7 +253,9 @@ static int spapr_fixup_cpu_numa_dt(void *fdt, int
> > offset, PowerPCCPU *cpu)
> > }
> >
> > /* Populate the "ibm,pa-features" property */
> > -static void spapr_populate_pa_features(PowerPCCPU *cpu, void *fdt, int
> > offset,
> > +static void spapr_populate_pa_features(sPAPRMachineState *spapr,
>
> While here, maybe you could rename spapr_populate_pa_features() to
> spapr_dt_pa_features() ?
>
> But anyway, this isn't really the point of this series, so:
Yeah, I don't think that's really in scope for this series.
> Reviewed-by: Greg Kurz <address@hidden>
Thanks.
--
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
signature.asc
Description: PGP signature
- [Qemu-ppc] [PATCH 0/6] spapr: Add optional capabilities, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 4/6] target/ppc: Clean up probing of VMX, VSX and DFP availability on KVM, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 2/6] spapr: Treat Hardware Transactional Memory (HTM) as an optional capability, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 3/6] spapr: Validate capabilities on migration, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 5/6] spapr: Handle VMX/VSX presence as an spapr capability flag, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 6/6] spapr: Handle Decimal Floating Point (DFP) as an optional capability, David Gibson, 2017/12/18
- [Qemu-ppc] [PATCH 1/6] spapr: Capabilities infrastructure, David Gibson, 2017/12/18
- Re: [Qemu-ppc] [PATCH 0/6] spapr: Add optional capabilities, David Gibson, 2017/12/18