qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling


From: Cornelia Huck
Subject: [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling
Date: Tue, 18 Jul 2017 16:24:46 +0200

Next try of the zPCI detangling, taking cpu models into account.

The goal of this is twofold:
- Being able to disable PCI support in a build completely, as for v1.
- Properly fencing off PCI if the relevant facility bit is not provided.

The second one leads to an interesting usability problem: -device help
still shows the various pci devices, but you cannot add them if the
cpu model does not include zpci, due to the phb not being instantiated.
The user is presented with

qemu-system-s390x: -device virtio-rng-pci: No 'PCI' bus found for device 
'virtio-rng-pci'

...which is not very helpful, as it does not point to the root cause (no
zpci in the cpu model, and therefore no pci at all). Not sure how one can
communicate this root cause, ideas welcome.

A cross-check with the zpci documentation would also be good, as it is
not public.

Changes v1->v2:
- add hw/s390x/s390-pci-stub.c to get rid of the ifdeffery
- use the cpumodel to decide whether the guest can use pci instructions or
  not; also use this in the sclp and ioinst code

Branch in git:

git://github.com/cohuck/qemu no-zpci-cpumodel

Cornelia Huck (9):
  kvm: remove hard dependency on pci
  s390x/pci: add stubs
  s390x: chsc nt2 events are pci-only
  s390x/pci: do not advertise pci on non-pci builds
  s390x/ccw: create s390 phb conditionally
  s390x/sclp: properly guard pci-specific functions
  s390x/pci: fence off instructions for non-pci
  s390x/kvm: msi route fixup for non-pci
  s390x: refine pci dependencies

 default-configs/s390x-softmmu.mak |  2 +-
 hw/pci/pci-stub.c                 | 12 ++++++
 hw/s390x/Makefile.objs            |  3 +-
 hw/s390x/s390-pci-bus.c           |  4 +-
 hw/s390x/s390-pci-bus.h           |  4 +-
 hw/s390x/s390-pci-stub.c          | 74 ++++++++++++++++++++++++++++++++
 hw/s390x/s390-virtio-ccw.c        | 12 +++---
 hw/s390x/sclp.c                   | 19 +++++++--
 target/s390x/ioinst.c             | 16 +++++++
 target/s390x/kvm.c                | 89 +++++++++++++++++++++++++++------------
 10 files changed, 193 insertions(+), 42 deletions(-)
 create mode 100644 hw/s390x/s390-pci-stub.c

-- 
2.13.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]