qemu-system-s390x fails when running without kvm: fatal: EXECUTE on instruction prefix 0x7f4 not implemented

Bug #1815143 reported by Liang Yan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

just wondering if TCG implements instruction prefix 0x7f4

server3:~ # zcat /boot/vmlinux-4.4.162-94.72-default.gz > /tmp/kernel

--> starting qemu with kvm enabled works fine
server3:~ # qemu-system-s390x -nographic -kernel /tmp/kernel -initrd /boot/initrd -enable-kvm
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 4.4.162-94.72-default (geeko@buildhost) (gcc version 4.8.5 (SUSE Linux) ) #1 SMP Mon Nov 12 18:57:45 UTC 2018 (9de753f)
setup.289988: Linux is running under KVM in 64-bit mode
setup.b050d0: The maximum memory size is 128MB
numa.196305: NUMA mode: plain
Write protected kernel read-only data: 8692k
[...]

--> but starting qemu without kvm enabled works fails
server3:~ # qemu-system-s390x -nographic -kernel /tmp/kernel -initrd /boot/initrd
qemu: fatal: EXECUTE on instruction prefix 0x7f4 not implemented

PSW=mask 0000000180000000 addr 000000000067ed6e cc 00
R00=0000000080000000 R01=000000000067ed76 R02=0000000000000000 R03=0000000000000000
R04=0000000000111548 R05=0000000000000000 R06=0000000000000000 R07=0000000000000000
R08=00000000000100f6 R09=0000000000000000 R10=0000000000000000 R11=0000000000000000
R12=0000000000ae2000 R13=0000000000681978 R14=0000000000111548 R15=000000000000bef0
F00=0000000000000000 F01=0000000000000000 F02=0000000000000000 F03=0000000000000000
F04=0000000000000000 F05=0000000000000000 F06=0000000000000000 F07=0000000000000000
F08=0000000000000000 F09=0000000000000000 F10=0000000000000000 F11=0000000000000000
F12=0000000000000000 F13=0000000000000000 F14=0000000000000000 F15=0000000000000000
V00=00000000000000000000000000000000 V01=00000000000000000000000000000000
V02=00000000000000000000000000000000 V03=00000000000000000000000000000000
V04=00000000000000000000000000000000 V05=00000000000000000000000000000000
V06=00000000000000000000000000000000 V07=00000000000000000000000000000000
V08=00000000000000000000000000000000 V09=00000000000000000000000000000000
V10=00000000000000000000000000000000 V11=00000000000000000000000000000000
V12=00000000000000000000000000000000 V13=00000000000000000000000000000000
V14=00000000000000000000000000000000 V15=00000000000000000000000000000000
V16=00000000000000000000000000000000 V17=00000000000000000000000000000000
V18=00000000000000000000000000000000 V19=00000000000000000000000000000000
V20=00000000000000000000000000000000 V21=00000000000000000000000000000000
V22=00000000000000000000000000000000 V23=00000000000000000000000000000000
V24=00000000000000000000000000000000 V25=00000000000000000000000000000000
V26=00000000000000000000000000000000 V27=00000000000000000000000000000000
V28=00000000000000000000000000000000 V29=00000000000000000000000000000000
V30=00000000000000000000000000000000 V31=00000000000000000000000000000000
C00=0000000000000000 C01=0000000000000000 C02=0000000000000000 C03=0000000000000000
C04=0000000000000000 C05=0000000000000000 C06=0000000000000000 C07=0000000000000000
C08=0000000000000000 C09=0000000000000000 C10=0000000000000000 C11=0000000000000000
C12=0000000000000000 C13=0000000000000000 C14=0000000000000000 C15=0000000000000000

Aborted (core dumped)

server3:~ # lscpu
Architecture: s390x
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Big Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s) per book: 1
Book(s) per drawer: 1
Drawer(s): 2
NUMA node(s): 1
Vendor ID: IBM/S390
Machine type: 2964
BogoMIPS: 20325.00
Hypervisor: z/VM 6.4.0
Hypervisor vendor: IBM
Virtualization type: full
Dispatching mode: horizontal
L1d cache: 128K
L1i cache: 96K
L2d cache: 2048K
L2i cache: 2048K
L3 cache: 65536K
L4 cache: 491520K
NUMA node0 CPU(s): 0-63
Flags: esan3 zarch stfle msa ldisp eimm dfp edat etf3eh highgprs te vx sie
server3:~ # uname -a
Linux server3 4.4.126-94.22-default #1 SMP Wed Apr 11 07:45:03 UTC 2018 (9649989) s390x s390x s390x GNU/Linux
server3:~ #

Revision history for this message
Thomas Huth (th-huth) wrote :

Which version of QEMU are you using here? I think this should be working fine with the latest version of QEMU (>= v2.10).

Changed in qemu:
status: New → Incomplete
Revision history for this message
Liang Yan (lyanux) wrote :

Hi, Thomas, you are right, I am using 2.9.1, and it does look OK in 2.10. do you mind to point me which part of code fixed it? Thanks.

Revision history for this message
Liang Yan (lyanux) wrote :

A little bit confused here, I tired to bisect it from 2.10, but it was always good from this branch. then I went back to 2.9.1, it was always crashed. Machine type related?

Revision history for this message
Thomas Huth (th-huth) wrote :

This should be the commit that fixed this issue:
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=303c681a8f50eb88fbafc

Changed in qemu:
status: Incomplete → Fix Released
Revision history for this message
Liang Yan (lyanux) wrote :

Confirmed the fix, thanks for the help.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.