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) | >>>>>> -- >>>>>> 2.20.1 >>>>>> >>>>>> >>>>> >>>>> 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 > > C. > >> >> - Cleber. >> >>> Thanks, >>> - Cleber. >>> >>>>> FIY, by using a "power8" CPU the Fedora 29 kernel boots successfully. >>>>> For a reproducer, please refer to [2]. >>>> >>>> >>>> Thanks, >>>> >>>> C. >>>> >>>> >>>>> Thanks, >>>>> - Cleber. >>>>> >>>>> [1] - >>>>> https://download.fedoraproject.org/pub/fedora-secondary/releases/29/Everything/ppc64le/os/ppc/ppc64/vmlinuz >>>>> >>>>> [2] - >>>>> https://github.com/clebergnu/qemu/blob/sent/target_arch_v4/tests/acceptance/boot_linux_console.py#L138 >>>>> >>>> >>>