diff options
author | Matthew Rosato | 2020-10-26 16:34:41 +0100 |
---|---|---|
committer | Alex Williamson | 2020-11-01 20:30:52 +0100 |
commit | 1e7552ff5c34972a7a17d2b06900a0b66c79a68b (patch) | |
tree | cf45f711a925437b91fb72777310f558fb33e8bf /hw/s390x/trace-events | |
parent | vfio: Add routine for finding VFIO_DEVICE_GET_INFO capabilities (diff) | |
download | qemu-1e7552ff5c34972a7a17d2b06900a0b66c79a68b.tar.gz qemu-1e7552ff5c34972a7a17d2b06900a0b66c79a68b.tar.xz qemu-1e7552ff5c34972a7a17d2b06900a0b66c79a68b.zip |
s390x/pci: get zPCI function info from host
We use the capability chains of the VFIO_DEVICE_GET_INFO ioctl to retrieve
the CLP information that the kernel exports.
To be compatible with previous kernel versions we fall back on previous
predefined values, same as the emulation values, when the ioctl is found
to not support capability chains. If individual CLP capabilities are not
found, we fall back on default values for only those capabilities missing
from the chain.
This patch is based on work previously done by Pierre Morel.
Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
[aw: non-Linux build fixes]
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'hw/s390x/trace-events')
-rw-r--r-- | hw/s390x/trace-events | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/s390x/trace-events b/hw/s390x/trace-events index 0dc5b818c4..8156693749 100644 --- a/hw/s390x/trace-events +++ b/hw/s390x/trace-events @@ -14,3 +14,8 @@ css_do_sic(uint16_t mode, uint8_t isc) "CSS: set interruption mode 0x%x on isc 0 virtio_ccw_interpret_ccw(int cssid, int ssid, int schid, int cmd_code) "VIRTIO-CCW: %x.%x.%04x: interpret command 0x%x" virtio_ccw_new_device(int cssid, int ssid, int schid, int devno, const char *devno_mode) "VIRTIO-CCW: add subchannel %x.%x.%04x, devno 0x%04x (%s)" virtio_ccw_set_ind(uint64_t ind_loc, uint8_t ind_old, uint8_t ind_new) "VIRTIO-CCW: indicator at %" PRIu64 ": 0x%x->0x%x" + +# s390-pci-vfio.c +s390_pci_clp_cap(const char *id, uint32_t cap) "PCI: %s: missing expected CLP capability %u" +s390_pci_clp_cap_size(const char *id, uint32_t size, uint32_t cap) "PCI: %s: bad size (%u) for CLP capability %u" +s390_pci_clp_dev_info(const char *id) "PCI: %s: cannot read vfio device info" |