ppc64: disable gen_pause() for linux-user mode
While trying to install a fedora container with
"lxc-create -t fedora -- -I qemu-ppc64" the installation abort with
the following error:
qemu: fatal: Unknown exception 0x65537. Aborting
NIP
0000004000927924 LR
00000040009e325c CTR
0000004000927480 XER
0000000000000000 CPU#0
MSR
9000000102806000 HID0
0000000000000000 HF
9000000002806000 iidx 3 didx 3
TB
00248932 1069155773327487
GPR00
00000040009e325c 00000040007ff800 0000004000aba098 0000000000000000
GPR04
00000040007ff878 0000004000dcb588 0000004000dcb830 0000004000a7a098
GPR08
0000000000000000 0000000000000000 00000040007ff878 0000004000927960
GPR12
0000000022022448 0000004000e2aef0 0000000000000000 0000000000000000
GPR16
0000000000000000 0000000000000000 0000000000000002 0000000000000001
GPR20
0000000000000000 0000000000000000 0000000000000000 0000004000800699
GPR24
0000004000e13320 0000000000000000 0000004000ac9ad8 0000004000ac9ae0
GPR28
0000000000000001 00000000100210a0 0000000000000000 0000000000000038
CR
22022442 [ E E - E E G G E ] RES
ffffffffffffffff
FPR00
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR04
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR08
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR12
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR16
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR20
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR24
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR28
0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPSCR
0000000000000000
/usr/share/lxc/templates/lxc-fedora: line 487: 26661 Aborted (core dumped) chroot . yum -y --nogpgcheck --installroot /run/install install python rpm yum
I've bisected until the commit:
commit
b68e60e6f0d2865e961a800fb8db96a7fc6494c4
Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: Tue May 3 18:03:33 2016 +0200
ppc: Get out of emulation on SMT "OR" ops
Otherwise tight loops at smt_low for example, which OPAL does,
eat so much CPU that we can't boot a kernel anymore. With that,
I can boot 8 CPUs just fine with powernv.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
We can fix that by preventing to send EXCP_HLT in the case of linux-user mode,
as the main loop doesn't know how to manage it.
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>