qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v1 for-2.12 0/9] s390x/tcg: facilitites and instructions
@ 2017-12-04 14:01 David Hildenbrand
  2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 1/9] s390x/tcg: ALSI/ALSGI are atomic with interlocked-acccess facility 1 David Hildenbrand
                   ` (9 more replies)
  0 siblings, 10 replies; 24+ messages in thread
From: David Hildenbrand @ 2017-12-04 14:01 UTC (permalink / raw)
  To: qemu-s390x, qemu-devel
  Cc: Christian Borntraeger, Cornelia Huck, Richard Henderson,
	Alexander Graf, Thomas Huth

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"

Please note that we still have problems with floating interrupts. I have
already patches and will send them out soon, once the current set of
patches have been reviewed and picked up. So if you run into problems,
try with -smp 1.


David Hildenbrand (9):
  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 SIGA 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  |  6 +++
 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  | 22 ++++++----
 target/s390x/misc_helper.c  | 18 +++++++++
 target/s390x/translate.c    | 98 +++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 270 insertions(+), 64 deletions(-)

-- 
2.14.3

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2017-12-05 16:34 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-04 14:01 [Qemu-devel] [PATCH v1 for-2.12 0/9] s390x/tcg: facilitites and instructions David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 1/9] s390x/tcg: ALSI/ALSGI are atomic with interlocked-acccess facility 1 David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 2/9] s390x/tcg: implement Interlocked-Access Facility 2 David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 3/9] s390x/tcg: wire up SET ADDRESS LIMIT David Hildenbrand
2017-12-05 14:56   ` Cornelia Huck
2017-12-05 16:24     ` David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 4/9] s390x/tcg: wire up SET CHANNEL MONITOR David Hildenbrand
2017-12-04 17:24   ` Cornelia Huck
2017-12-04 17:27     ` David Hildenbrand
2017-12-04 17:32       ` Cornelia Huck
2017-12-04 17:39         ` David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 5/9] s390x/tcg: Implement STORE CHANNEL PATH STATUS David Hildenbrand
2017-12-05 15:04   ` Cornelia Huck
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 6/9] s390x/tcg: Implement SIGA instruction David Hildenbrand
2017-12-04 17:29   ` Cornelia Huck
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 7/9] s390x/tcg: implement extract-CPU-time facility David Hildenbrand
2017-12-05 15:14   ` Cornelia Huck
2017-12-05 16:28     ` David Hildenbrand
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 8/9] s390x/tcg: we already implement the Set-Program-Parameter facility David Hildenbrand
2017-12-05 15:17   ` Cornelia Huck
2017-12-04 14:01 ` [Qemu-devel] [PATCH v1 for-2.12 9/9] s390x: change the QEMU cpu model to a stripped down z12 David Hildenbrand
2017-12-05 15:24   ` Cornelia Huck
2017-12-05 16:34     ` David Hildenbrand
2017-12-04 14:05 ` [Qemu-devel] [PATCH v1 for-2.12 01/10] s390x/tcg: ASI/ASGI are atomic with interlocked-acccess facility 1 David Hildenbrand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).