qemu-s390x
[Top][All Lists]
Advanced

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

Re: [qemu-s390x] [PATCH v1 4/5] s390x/vfio: ap: Intercepting AP Queue In


From: Pierre Morel
Subject: Re: [qemu-s390x] [PATCH v1 4/5] s390x/vfio: ap: Intercepting AP Queue Interrupt Control
Date: Wed, 7 Nov 2018 23:44:17 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1

On 07/11/2018 13:40, Cornelia Huck wrote:
On Fri,  2 Nov 2018 11:30:20 +0100
Pierre Morel <address@hidden> wrote:

From: Pierre Morel <address@hidden>

Meta: you may want to rewrite your authorship to the shorter address.

right thanks (this patch is in my queue since too long)



We intercept the PQAP(AQIC) instruction.

Until we implement AQIC we return a PGM_OPERATION.

Signed-off-by: Pierre Morel <address@hidden>
---
  hw/vfio/ap.c                 | 10 ++++++++++
  include/hw/s390x/ap-device.h |  9 +++++++++
  target/s390x/kvm.c           | 20 ++++++++++++++++++++
  3 files changed, 39 insertions(+)

diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c
index 3962bb74e5..d8d9cadc46 100644
--- a/hw/vfio/ap.c
+++ b/hw/vfio/ap.c
@@ -38,6 +38,16 @@ typedef struct VFIOAPDevice {
  #define VFIO_AP_DEVICE(obj) \
          OBJECT_CHECK(VFIOAPDevice, (obj), VFIO_AP_DEVICE_TYPE)
+/*
+ * ap_pqap
+ * @env: environment pointing to registers
+ * return value: Code Condition
+ */
+int ap_pqap(CPUS390XState *env)
+{
+    return -PGM_OPERATION;
+}

I'm not sure whether it makes sense to add such a skeleton handler
here; perhaps we should merge with the next patch that actually does
something for AQCI?

OK


+
  static void vfio_ap_compute_needs_reset(VFIODevice *vdev)
  {
      vdev->needs_reset = false;
diff --git a/include/hw/s390x/ap-device.h b/include/hw/s390x/ap-device.h
index 765e9082a3..a83ea096c7 100644
--- a/include/hw/s390x/ap-device.h
+++ b/include/hw/s390x/ap-device.h
@@ -19,4 +19,13 @@ typedef struct APDevice {
  #define AP_DEVICE(obj) \
      OBJECT_CHECK(APDevice, (obj), AP_DEVICE_TYPE)
+#define AP_DEVICE_GET_CLASS(obj) \
+    OBJECT_GET_CLASS(APDeviceClass, (obj), AP_DEVICE_TYPE)
+
+#define AP_DEVICE_CLASS(klass) \
+    OBJECT_CLASS_CHECK(APDeviceClass, (klass), AP_DEVICE_TYPE)

Looks like an unrelated change -- does that maybe belong into the next
patch?

Seems indeed.


+
+#include "cpu.h"
+int ap_pqap(CPUS390XState *env);
+
  #endif /* HW_S390X_AP_DEVICE_H */

The wiring up looks reasonable.


Thanks,
Pierre

--
Pierre Morel
Linux/KVM/QEMU in Böblingen - Germany




reply via email to

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