qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling
@ 2017-07-18 14:24 Cornelia Huck
  2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 1/9] kvm: remove hard dependency on pci Cornelia Huck
                   ` (10 more replies)
  0 siblings, 11 replies; 42+ messages in thread
From: Cornelia Huck @ 2017-07-18 14:24 UTC (permalink / raw)
  To: qemu-devel; +Cc: borntraeger, agraf, thuth, pmorel, zyimin, Cornelia Huck

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

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

end of thread, other threads:[~2017-08-07 15:47 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-18 14:24 [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 1/9] kvm: remove hard dependency on pci Cornelia Huck
2017-07-18 15:00   ` Thomas Huth
2017-07-18 15:20     ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 2/9] s390x/pci: add stubs Cornelia Huck
2017-07-19  7:42   ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 3/9] s390x: chsc nt2 events are pci-only Cornelia Huck
2017-07-19  7:57   ` Thomas Huth
2017-07-19  8:05     ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 4/9] s390x/pci: do not advertise pci on non-pci builds Cornelia Huck
2017-07-18 19:56   ` Christian Borntraeger
2017-07-19  8:00     ` Cornelia Huck
2017-07-19  8:56       ` Yi Min Zhao
2017-07-19  9:24         ` Cornelia Huck
2017-07-19  9:27           ` Yi Min Zhao
2017-07-19  9:38             ` Yi Min Zhao
2017-07-19 11:41   ` Thomas Huth
2017-07-19 12:18     ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 5/9] s390x/ccw: create s390 phb conditionally Cornelia Huck
2017-07-19  8:00   ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 6/9] s390x/sclp: properly guard pci-specific functions Cornelia Huck
2017-07-19  8:03   ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 7/9] s390x/pci: fence off instructions for non-pci Cornelia Huck
2017-07-19  3:21   ` Yi Min Zhao
2017-07-19  7:38     ` Cornelia Huck
2017-07-19  8:07   ` Thomas Huth
2017-07-19  8:49     ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 8/9] s390x/kvm: msi route fixup " Cornelia Huck
2017-07-18 14:58   ` Philippe Mathieu-Daudé
2017-07-18 15:22     ` Cornelia Huck
2017-07-19  3:16       ` Yi Min Zhao
2017-07-19  7:09         ` Thomas Huth
2017-07-19  7:30           ` Cornelia Huck
2017-07-19  3:13   ` Yi Min Zhao
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 9/9] s390x: refine pci dependencies Cornelia Huck
2017-07-18 14:51   ` Thomas Huth
2017-07-18 19:18 ` [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling no-reply
2017-07-19  7:54   ` Cornelia Huck
2017-07-19 13:03 ` Cornelia Huck
2017-07-19 13:31   ` Thomas Huth
2017-07-24 10:44     ` Christian Borntraeger
2017-08-07 15:46       ` Cornelia Huck

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).