blob: 63a9dc6e608dc96a8e0989998ae406e55b800cbe (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
Hotplugged vcpu does not guarantee cpu compat mode(power8) on power9 host
./ppc64-softmmu/qemu-system-ppc64 -version
QEMU emulator version 2.11.50 (v2.11.0-254-gaf35267)
1. Boot a power8 compat mode guest power9 HW.
./ppc64-softmmu/qemu-system-ppc64 -machine pseries,accel=kvm,max-cpu-compat=power8 -m 4096 /home/sath/images/guest.qcow2 -smp 1,maxcpus=2 -serial /dev/pts/8 -monitor stdio -vga none -nographic
QEMU 2.11.50 monitor - type 'help' for more information
(qemu)
2. Check for cpuinfo
# cat /proc/cpuinfo
processor : 0
cpu : POWER8 (architected), altivec supported
clock : 2200.000000MHz
revision : 2.1 (pvr 004e 1201)
timebase : 512000000
platform : pSeries
model : IBM pSeries (emulated by qemu)
machine : CHRP IBM pSeries (emulated by qemu)
MMU : Hash
3. Run a small program invoking isa v3.0 instruction, it should complain 'Illegal instruction' as it is a power8 compat guest
# cat 1.c
#include <stdio.h>
void main()
{
asm volatile (".long 0x7c0005e6");
}
# ./a.out
[ 59.352795] a.out[1741]: unhandled signal 4 at 0000000010000600 nip 0000000010000600 lr 00007fffb4da5080 code 1
Illegal instruction
4. Hotplug a vcpu
(qemu) device_add host-spapr-cpu-core,id=core1,core-id=1
(qemu) info cpus
* CPU #0: nip=0xc0000000000de42c thread_id=113110
CPU #1: nip=0xc0000000000de42c thread_id=113348
5. Try running the same program in the hotplugged vcpu and it does not complain as 'Illegal instruction'
#taskset -c 1 ./a.out ----------------------NOK
#
# taskset -c 0 ./a.out
[ 356.618031] a.out[1755]: unhandled signal 4 at 0000000010000600 nip 0000000010000600 lr 00007fffae7f5080 code 1
Illegal instruction
|