qemu s390x on focal - applications breaking Running qemu-system-s390x (1:4.0+dfsg-0ubuntu10) on an x86-64 Focal host with an upgrade of a Eoan s390x VM to a Focal s390x is triggering random breakage, for example: sudo apt-get update && sudo apt-get dist-upgrade ... ... Unpacking debianutils (4.9) over (4.8.6.3) ... Setting up debianutils (4.9) ... Use of uninitialized value $ARGV[0] in string ne at /usr/sbin/update-mime line 43. (Reading database ... 83640 files and directories currently installed.) Preparing to unpack .../bash_5.0-5ubuntu1_s390x.deb ... Unpacking bash (5.0-5ubuntu1) over (5.0-4ubuntu1) ... Setting up bash (5.0-5ubuntu1) ... [12124.788618] User process fault: interruption code 0007 ilc:3 in bash[2aa3d780000+149000] dpkg: error processing package bash (--configure): installed bash package post-installation script subprocess was killed by signal (Floating point exception), core du mped Errors were encountered while processing: bash E: Sub-process /usr/bin/dpkg returned an error code (1) And now bash is completely broken: cking@eoan-s390x:~$ bash [12676.204389] User process fault: interruption code 0007 ilc:3 in bash[2aa14780000+149000] Floating point exception (core dumped) The upgrade works OK on a s390x, so I'm assuming it's something to do with the qemu emulation. I've also seen in the dmesg log: [ 287.624414] User process fault: interruption code 0007 ilc:3 in libstdc++.so.6.0.28[3ffb3e00000+21d000] [ 288.991706] User process fault: interruption code 0007 ilc:3 in libstdc++.so.6.0.28[3ff90080000+21d000] ps is showing QEMU is running as follows: /usr/bin/qemu-system-s390x -name guest=ubuntu20.04-focal-s390x,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-10-ubuntu20.04-focal-s3/master-key.aes -machine s390-ccw-virtio-eoan,accel=tcg,usb=off,dump-guest-core=off -m 2048 -overcommit mem-lock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 6501dfbf-16d7-4412-a9d5-1ee808b42804 -display none -no-user-config -nodefaults -chardev socket,id=charmonitor,fd=24,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device virtio-scsi-ccw,id=scsi0,devno=fe.0.0002 -device virtio-serial-ccw,id=virtio-serial0,devno=fe.0.0003 -drive file=/pool-ssd/virt/ubuntu19.10-eaon-s390x-clone,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-ccw,scsi=off,devno=fe.0.0000,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive if=none,id=drive-scsi0-0-0-0,readonly=on -device scsi-cd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,device_id=drive-scsi0-0-0-0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0 -netdev tap,fd=27,id=hostnet0 -device virtio-net-ccw,netdev=hostnet0,id=net0,mac=52:54:00:a3:21:68,devno=fe.0.0001 -chardev socket,id=charchannel0,fd=28,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 -chardev pty,id=charconsole0 -device sclpconsole,chardev=charconsole0,id=console0 -device virtio-balloon-ccw,id=balloon0,devno=fe.0.0004 -object rng-random,id=objrng0,filename=/dev/urandom -device virtio-rng-ccw,rng=objrng0,id=rng0,devno=fe.0.0005 -sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny -msg timestamp=on Hi Colin, I didn't read much if the details but I think it is clear. Per request of IBM focal got -march=z13 but tcg has no emulation for some of the instructions of this cpu. That is the breakage that you are seeing and afaik there is nothing we can do than waiting for qemu to grow that support. Can you please test again with the latest QEMU 4.2 RC? There have been quite a lot of fixes in this area in the past months, so maybe this issue has already been resolved in 4.2. [Expired for QEMU because there has been no activity for 60 days.] [Expired for Ubuntu on IBM z Systems because there has been no activity for 60 days.] FYI - Focal now contains 4.2 which might (or not) have the bits you need. You most likely get further, but I can't give guarantees if enough of march=z13 is supported to work for a full Focal (not sure on vector instructions for example) including all of userspace. Marking it incomplete - if someone wants to try please go for it and let us know. Otherwise let it expire again ... Seems like you have to set all to "incomplete" to restart the expire counter again... [Expired for Ubuntu on IBM z Systems because there has been no activity for 60 days.] [Expired for QEMU because there has been no activity for 60 days.]