[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 16/44] s390x: chsc nt2 events are pci-only
From: |
Cornelia Huck |
Subject: |
[Qemu-devel] [PULL 16/44] s390x: chsc nt2 events are pci-only |
Date: |
Wed, 30 Aug 2017 18:52:24 +0200 |
The nt2 event class is pci-only - don't look for events if pci is
not in the active cpu model.
Reviewed-by: Thomas Huth <address@hidden>
Acked-by: Christian Borntraeger <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
---
hw/s390x/s390-pci-bus.c | 4 ++--
hw/s390x/s390-pci-bus.h | 4 ++--
hw/s390x/s390-pci-stub.c | 4 ++--
target/s390x/ioinst.c | 16 ++++++++++++++++
4 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
index 61cfd2138f..c57f6ebae0 100644
--- a/hw/s390x/s390-pci-bus.c
+++ b/hw/s390x/s390-pci-bus.c
@@ -47,7 +47,7 @@ S390pciState *s390_get_phb(void)
return phb;
}
-int chsc_sei_nt2_get_event(void *res)
+int pci_chsc_sei_nt2_get_event(void *res)
{
ChscSeiNt2Res *nt2_res = (ChscSeiNt2Res *)res;
PciCcdfAvail *accdf;
@@ -87,7 +87,7 @@ int chsc_sei_nt2_get_event(void *res)
return rc;
}
-int chsc_sei_nt2_have_event(void)
+int pci_chsc_sei_nt2_have_event(void)
{
S390pciState *s = s390_get_phb();
diff --git a/hw/s390x/s390-pci-bus.h b/hw/s390x/s390-pci-bus.h
index 67af2c12ff..5df6292509 100644
--- a/hw/s390x/s390-pci-bus.h
+++ b/hw/s390x/s390-pci-bus.h
@@ -319,8 +319,8 @@ typedef struct S390pciState {
} S390pciState;
S390pciState *s390_get_phb(void);
-int chsc_sei_nt2_get_event(void *res);
-int chsc_sei_nt2_have_event(void);
+int pci_chsc_sei_nt2_get_event(void *res);
+int pci_chsc_sei_nt2_have_event(void);
void s390_pci_sclp_configure(SCCB *sccb);
void s390_pci_sclp_deconfigure(SCCB *sccb);
void s390_pci_iommu_enable(S390PCIIOMMU *iommu);
diff --git a/hw/s390x/s390-pci-stub.c b/hw/s390x/s390-pci-stub.c
index 48f8b4e8a3..7a642d376c 100644
--- a/hw/s390x/s390-pci-stub.c
+++ b/hw/s390x/s390-pci-stub.c
@@ -7,12 +7,12 @@
#include "s390-pci-bus.h"
/* target/s390x/ioinst.c */
-int chsc_sei_nt2_get_event(void *res)
+int pci_chsc_sei_nt2_get_event(void *res)
{
return 1;
}
-int chsc_sei_nt2_have_event(void)
+int pci_chsc_sei_nt2_have_event(void)
{
return 0;
}
diff --git a/target/s390x/ioinst.c b/target/s390x/ioinst.c
index 51fbea620d..3fa3301f50 100644
--- a/target/s390x/ioinst.c
+++ b/target/s390x/ioinst.c
@@ -599,6 +599,22 @@ static int chsc_sei_nt0_have_event(void)
return 0;
}
+static int chsc_sei_nt2_get_event(void *res)
+{
+ if (s390_has_feat(S390_FEAT_ZPCI)) {
+ return pci_chsc_sei_nt2_get_event(res);
+ }
+ return 1;
+}
+
+static int chsc_sei_nt2_have_event(void)
+{
+ if (s390_has_feat(S390_FEAT_ZPCI)) {
+ return pci_chsc_sei_nt2_have_event();
+ }
+ return 0;
+}
+
#define CHSC_SEI_NT0 (1ULL << 63)
#define CHSC_SEI_NT2 (1ULL << 61)
static void ioinst_handle_chsc_sei(ChscReq *req, ChscResp *res)
--
2.13.5
- [Qemu-devel] [PULL 06/44] tests/pxe: Check virtio-net-ccw on s390x, (continued)
- [Qemu-devel] [PULL 06/44] tests/pxe: Check virtio-net-ccw on s390x, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 07/44] tests: Run filter-redirector and -mirror test only on POSIX systems, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 08/44] tests: Add network filter tests to the check-qtest-s390x list, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 10/44] watchdog/wdt_diag288: Mark diag288 watchdog as non-hotpluggable, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 09/44] s390x/tcg: specification exception for unknown diag, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 11/44] s390x: wire up diag288 in tcg, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 12/44] configure: enable --s390-pgste linker option, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 13/44] 9pfs: fix dependencies, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 14/44] kvm: remove hard dependency on pci, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 15/44] s390x/pci: add stubs, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 16/44] s390x: chsc nt2 events are pci-only,
Cornelia Huck <=
- [Qemu-devel] [PULL 17/44] s390x/pci: do not advertise pci on non-pci builds, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 18/44] s390x/ccw: create s390 phb conditionally, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 19/44] s390x/sclp: properly guard pci-specific functions, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 20/44] s390x/pci: fence off instructions for non-pci, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 21/44] s390x: refine pci dependencies, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 22/44] s390x/s390-skeys: Mark the storage key devices with user_creatable = false, Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 23/44] s390x/kvm: drop KVMState parameter from s390_get_memslot_count(), Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 24/44] s390x/kvm: drop KVMState parameter from kvm_s390_set_mem_limit(), Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 25/44] target/s390x: simplify ri_allowed(), Cornelia Huck, 2017/08/30
- [Qemu-devel] [PULL 26/44] target/s390x: simplify gs_allowed(), Cornelia Huck, 2017/08/30