Re: [kvm-unit-tests PATCH v5 5/6] s390x: css: testing measurement block format 0

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

 





On 3/9/21 6:05 PM, Cornelia Huck wrote:
On Tue,  9 Mar 2021 13:51:16 +0100
Pierre Morel <pmorel@xxxxxxxxxxxxx> wrote:

We test the update of the measurement block format 0, the
measurement block origin is calculated from the mbo argument
used by the SCHM instruction and the offset calculated using
the measurement block index of the SCHIB.

Signed-off-by: Pierre Morel <pmorel@xxxxxxxxxxxxx>
---
  lib/s390x/css.h     | 12 ++++++
  lib/s390x/css_lib.c |  4 --
  s390x/css.c         | 95 ++++++++++++++++++++++++++++++++++++++++-----
  3 files changed, 98 insertions(+), 13 deletions(-)


(...)

diff --git a/lib/s390x/css_lib.c b/lib/s390x/css_lib.c
index 95d9a78..8f09383 100644
--- a/lib/s390x/css_lib.c
+++ b/lib/s390x/css_lib.c
@@ -365,10 +365,6 @@ void css_irq_io(void)
  		       lowcore_ptr->io_int_param, sid);
  		goto pop;
  	}
-	report_info("subsys_id_word: %08x io_int_param %08x io_int_word %08x",
-			lowcore_ptr->subsys_id_word,
-			lowcore_ptr->io_int_param,
-			lowcore_ptr->io_int_word);

Hm, why are you removing it? If you are doing some general cleanup, it
probably belongs into patch 2?


Yes, right.
I remove it because there are too many informations shown when the trafic becomes more intense. this was not intended to be here first, I must have forget to remove it after debugging during the css series round.



  	report_prefix_pop();
report_prefix_push("tsch");
diff --git a/s390x/css.c b/s390x/css.c
index a763814..b63826e 100644
--- a/s390x/css.c
+++ b/s390x/css.c
@@ -74,18 +74,12 @@ static void test_sense(void)
  		return;
  	}
- ret = register_io_int_func(css_irq_io);
-	if (ret) {
-		report(0, "Could not register IRQ handler");
-		return;
-	}
-

This (and the cleanup changes) definitely belongs into patch 2.

yes too


  	lowcore_ptr->io_int_param = 0;
senseid = alloc_io_mem(sizeof(*senseid), 0);
  	if (!senseid) {
  		report(0, "Allocation of senseid");
-		goto error_senseid;
+		return;
  	}
ccw = ccw_alloc(CCW_CMD_SENSE_ID, senseid, sizeof(*senseid), CCW_F_SLI);
@@ -137,8 +131,24 @@ error:
  	free_io_mem(ccw, sizeof(*ccw));
  error_ccw:
  	free_io_mem(senseid, sizeof(*senseid));
-error_senseid:
-	unregister_io_int_func(css_irq_io);
+}
+
+static void sense_id(void)
+{
+	struct ccw1 *ccw;
+
+	senseid = alloc_io_mem(sizeof(*senseid), 0);
+	assert(senseid);
+
+	ccw = ccw_alloc(CCW_CMD_SENSE_ID, senseid, sizeof(*senseid), CCW_F_SLI);
+	assert(ccw);

You're allocating senseid and ccw every time... wouldn't it be better
to allocate them once and pass them in as a parameter? (Not that it
should matter much, I guess.)

OK, since I rework the patch I can change this too I guess.
Thanks.

Regards,
Pierre


--
Pierre Morel
IBM Lab Boeblingen



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux