On 02/07/2019 02:14, David Gibson wrote: > On Mon, Jul 01, 2019 at 11:45:23AM +0200, Philippe Mathieu-Daudé wrote: >> On 7/1/19 7:04 AM, David Gibson wrote: >>> On Fri, Jun 28, 2019 at 03:20:32PM +0200, Philippe Mathieu-Daudé wrote: >>>> Hi, >>>> >>>> On 3/12/19 8:58 PM, Cédric Le Goater wrote: >>>>> On 3/12/19 8:30 PM, Cleber Rosa wrote: >>>>>>> From: "Cleber Rosa" <cr...@redhat.com> >>>>>>> Sent: Tuesday, March 12, 2019 3:14:09 PM >>>>>>> Subject: Re: [Qemu-devel] [PULL 57/60] target/ppc: add HV support for >>>>>>> POWER9 >>>>>>> >>>>>>> On Tue, Mar 12, 2019 at 07:34:04PM +0100, Cédric Le Goater wrote: >>>>>>>> On 3/12/19 4:01 PM, Cleber Rosa wrote: >>>>>>>>> On Sun, Mar 10, 2019 at 07:27:00PM +1100, David Gibson wrote: >>>>>>>>>> From: Cédric Le Goater <c...@kaod.org> >>>>>>>>>> >>>>>>>>>> We now have enough support to boot a PowerNV machine with a POWER9 >>>>>>>>>> processor. Allow HV mode on POWER9. >>>>>>>>>> >>>>>>>>>> Signed-off-by: Cédric Le Goater <c...@kaod.org> >>>>>>>>>> Message-Id: <20190307223548.20516-16-...@kaod.org> >>>>>>>>>> Signed-off-by: David Gibson <da...@gibson.dropbear.id.au> >>>>>>>>>> --- >>>>>>>>>> target/ppc/translate_init.inc.c | 3 ++- >>>>>>>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>>>>>>> >>>>>>>>>> diff --git a/target/ppc/translate_init.inc.c >>>>>>>>>> b/target/ppc/translate_init.inc.c >>>>>>>>>> index af70a3b78c..0bd555eb19 100644 >>>>>>>>>> --- a/target/ppc/translate_init.inc.c >>>>>>>>>> +++ b/target/ppc/translate_init.inc.c >>>>>>>>>> @@ -8895,7 +8895,7 @@ POWERPC_FAMILY(POWER9)(ObjectClass *oc, void >>>>>>>>>> *data) >>>>>>>>>> PPC_CACHE | PPC_CACHE_ICBI | PPC_CACHE_DCBZ | >>>>>>>>>> PPC_MEM_SYNC | PPC_MEM_EIEIO | >>>>>>>>>> PPC_MEM_TLBSYNC | >>>>>>>>>> - PPC_64B | PPC_64BX | PPC_ALTIVEC | >>>>>>>>>> + PPC_64B | PPC_64H | PPC_64BX | PPC_ALTIVEC | >>>>>>>>>> PPC_SEGMENT_64B | PPC_SLBI | >>>>>>>>>> PPC_POPCNTB | PPC_POPCNTWD | >>>>>>>>>> PPC_CILDST; >>>>>>>>>> @@ -8907,6 +8907,7 @@ POWERPC_FAMILY(POWER9)(ObjectClass *oc, void >>>>>>>>>> *data) >>>>>>>>>> PPC2_ISA205 | PPC2_ISA207S | >>>>>>>>>> PPC2_FP_CVT_S64 | >>>>>>>>>> PPC2_TM | PPC2_ISA300 | PPC2_PRCNTL; >>>>>>>>>> pcc->msr_mask = (1ull << MSR_SF) | >>>>>>>>>> + (1ull << MSR_SHV) | >>>>>>>>>> (1ull << MSR_TM) | >>>>>>>>>> (1ull << MSR_VR) | >>>>>>>>>> (1ull << MSR_VSX) | >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> This change prevents a Fedora 29 kernel[1] from booting... is this >>>>>>>>> intended or a known limitation of the Fedora 29 kernel? >>>>>>>> >>>>>>>> The default CPU is still power8_v2.0. This is curious. >>>>>>>> >>>>>>> >>>>>>> Are you sure? I'm getting: >>>>>>> >>>>>>> $ git rev-parse HEAD >>>>>>> cfc3fef6b4e493bf1a7ee16790ad584e20dfbbd1 >>>>>>> $ ./ppc64-softmmu/qemu-system-ppc64 -qmp unix:/tmp/qmp-sock,server >>>>>>> $ ./scripts/qmp/qom-get -s /tmp/qmp-sock >>>>>>> /machine/unattached/device[0].type >>>>>>> power9_v2.0-spapr-cpu-core >>>>> >>>>> That's a pseries machine, not a powernv machine. pseries should use P9 >>>>> processor by default but the patch above should not impact f29 on >>>>> pseries. >>>>> If it does, then we have a bug. >>>>> >>>>>> Looks like the overall default is "power9_v2.0", and then on pseries-3.1 >>>>>> and >>>>>> lower, it's "power8_v2.0", as per 34a6b015a98. >>>>> >>>>> I was looking at pnv_machine_class_init() which sets the default CPU : >>>>> >>>>> mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("power8_v2.0"); >>>> >>>> I found this thread while trying auto-bisection for LP#1834613: >>>> https://bugs.launchpad.net/bugs/1834613 >>>> >>>> When trying the options suggested by Laurent here: >>>> https://lists.gnu.org/archive/html/qemu-devel/2019-06/msg06209.html >>>> >>>> this one hangs: >>>> >>>> $ qemu-system-ppc64 \ >>>> -kernel vmlinuz-vanilla \ >>>> -nographic -append "console=hvc0" \ >>>> -M cap-cfpc=broken,cap-sbbc=broken,cap-ibs=broken >>>> >>>> but this one works: >>>> >>>> $ qemu-system-ppc64 \ >>>> -kernel vmlinuz-vanilla \ >>>> -nographic -append "console=hvc0" \ >>>> -M pseries-3.1 >>> >>> Sorry, I missed most of this thread while on holidays. What's the >>> actual bug here? >> >> I don't think there is a bug, this seems the result of adding a new feature. >> The commit message is not obvious that old kernels won't work on the >> default machine type, and we have to add the extra '-M pseries-3.1' >> command line option to run such images. > > Hm, except apparently turning off the Spectre options doesn't change > that, so I wonder what change in the newer machine type is causing the > breakage. >
I don't see such an issue on David's ppc-for-4.1 branch. C.