Skip to content

s390x/tcg: facilitites and instructions

David Hildenbrand qemu-devel 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest10 patches 14 repliesIn review
  2. v11 of 10 patches 0 repliesSuperseded

Changes in v2 from the cover letter

- rephrased/fixed some patch descriptions

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/10s390x/tcg: ASI/ASGI are atomic with interlocked-acccess facility 1target/s390x/insn-data.def target/s390x/translate.c+13 -22 replies
2/10s390x/tcg: ALSI/ALSGI are atomic with interlocked-acccess facility 1target/s390x/insn-data.def+2 -22 replies
3/10s390x/tcg: implement Interlocked-Access Facility 2target/s390x/cpu_models.c target/s390x/insn-data.def target/s390x/translate.c+40 -61 reply
4/10s390x/tcg: wire up SET ADDRESS LIMITtarget/s390x/helper.h target/s390x/insn-data.def target/s390x/misc_helper.c +1 more+18 -01 reply
5/10s390x/tcg: wire up SET CHANNEL MONITORtarget/s390x/helper.h target/s390x/insn-data.def target/s390x/misc_helper.c +1 more+18 -01 reply
6/10s390x/tcg: Implement STORE CHANNEL PATH STATUStarget/s390x/insn-data.def target/s390x/translate.c+8 -01 reply
7/10s390x/tcg: Implement SIGNAL ADAPTER instructiontarget/s390x/insn-data.def target/s390x/translate.c+9 -01 reply
8/10s390x/tcg: implement extract-CPU-time facilitytarget/s390x/cpu_models.c target/s390x/insn-data.def target/s390x/translate.c+39 -03 replies
9/10s390x/tcg: we already implement the Set-Program-Parameter facilitytarget/s390x/cpu_models.c+3 -21 reply
10/10s390x: change the QEMU cpu model to a stripped down z12hw/s390x/s390-virtio-ccw.c target/s390x/cpu.h target/s390x/cpu_models.c +2 more+140 -591 reply

Reviews trailers per patch

5 of 10 patches have a Reviewed-by or Acked-by.

PatchRichard Henderson
1/10
2/10
3/10
4/10R-b
5/10R-b
6/10R-b
7/10R-b
8/10
9/10R-b
10/10

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [Qemu-devel] [PATCH v2 for-2.12 00/10] s390x/tcg: facilitites and instructions

Wire up some io instructions and implement new facilitites. Make sure to take care of MTTCG when it comes to atomic operations.

As we are now able to install/boot a Fedora 26/27 as well as an upstream kernel compiled for z12, let's bump up the QEMU cpu model to a very stripped down version of a z12 (with missing base features). Take care of backwards compatibility (as we defined the QEMU model as migration-safe).

Try it yourself: https://github.com/davidhildenbrand/qemu.git s390x-queue

This branch is based on https://github.com/cohuck/qemu.git s390x-next and contains other patches sent previously, especially
- s390x/tcg: CCW hotplug support
- cpus: make pause_all_cpus() play with SMP on single threaded TCG
- cpu-exec: fix missed CPU kick during interrupt injection

$ baseurl=https://ftp-stud.hs-esslingen.de/pub/fedora-secondary/releases/27/Server/s390x/os/
$ wget ${baseurl}/images/kernel.img
$ wget ${baseurl}/images/initrd.img
$ qemu-img create -f qcow2 guest-tcg.qcow2 8G
$ qemu-system-s390x \
    -nographic -machine s390-ccw-virtio -m 2048 \
    --accel tcg,thread=multi -smp 4,maxcpus=4 \
    -hda guest-tcg.qcow2 \
    -kernel kernel.img \
    -initrd initrd.img \
    --append "TERM=linux inst.repo=${baseurl}/ ip=dhcp inst.geoloc=0"

I was also able to install and boot Ubuntu 17.10. Enabling channel measurements now also works.

v1 -> v2:
- rephrased/fixed some patch descriptions

David Hildenbrand (10):
s390x/tcg: ASI/ASGI are atomic with interlocked-acccess facility 1 s390x/tcg: ALSI/ALSGI are atomic with interlocked-acccess facility 1 s390x/tcg: implement Interlocked-Access Facility 2 s390x/tcg: wire up SET ADDRESS LIMIT
s390x/tcg: wire up SET CHANNEL MONITOR
s390x/tcg: Implement STORE CHANNEL PATH STATUS
s390x/tcg: Implement SIGNAL ADAPTER instruction s390x/tcg: implement extract-CPU-time facility
s390x/tcg: we already implement the Set-Program-Parameter facility
s390x: change the QEMU cpu model to a stripped down z12

 hw/s390x/s390-virtio-ccw.c  |   8 ++++
 target/s390x/cpu.h          |   3 ++
 target/s390x/cpu_models.c   |  97 +++++++++++++++++----------------------
 target/s390x/cpu_models.h   |   1 +
 target/s390x/gen-features.c |  87 +++++++++++++++++++++++++++++++++++
 target/s390x/helper.h       |   2 +
 target/s390x/insn-data.def  |  26 +++++++----
 target/s390x/misc_helper.c  |  18 ++++++++
 target/s390x/translate.c    | 109 ++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 285 insertions(+), 66 deletions(-)
Signature · 1 line
2.14.3