All of lore.kernel.org
 help / color / mirror / Atom feed
* [kvm-unit-tests PATCH v5 0/6] CSS Mesurement Block
@ 2021-03-09 12:51 Pierre Morel
  2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 1/6] s390x: css: Store CSS Characteristics Pierre Morel
                   ` (6 more replies)
  0 siblings, 7 replies; 16+ messages in thread
From: Pierre Morel @ 2021-03-09 12:51 UTC (permalink / raw)
  To: kvm; +Cc: frankja, david, thuth, cohuck, imbrenda

We tests the update of the Mesurement Block (MB) format 0
and format 1 using a serie of senseid requests.

*Warning*: One of the tests for format-1 will unexpectedly fail for QEMU elf
unless the QEMU patch "css: SCHIB measurement block origin must be aligned"
is applied.
With Protected Virtualization, the PGM is correctly recognized.

The MB format 1 is only provided if the Extended mesurement Block
feature is available.

This feature is exposed by the CSS characteristics general features
stored by the Store Channel Subsystem Characteristics CHSC command,
consequently, we implement the CHSC instruction call and the SCSC CHSC
command.

In order to ease the writing of new tests using:
- interrupt
- enablement of a subchannel
- multiple I/O on a subchannel

We do the following simplifications:
- we create a CSS initialization routine
- we register the I/O interrupt handler on CSS initialization
- we do not enable or disable a subchannel in the senseid test,
  assuming this test is done after the enable test, this allows
  to create traffic using the SSCH used by senseid.
- failures not part of the feature under test will stop the tests.
- we add a css_enabled() function to test if a subchannel is enabled.

*note*:
    I rearranged the use of the senseid for the tests, by not modifying
    the existing test and having a dedicated senseid() function for
    the purpose of the tests.
    I think that it is in the rigght way so I kept the RB and ACK on
    the simplification, there are less changes, if it is wrong from me
    I suppose I will see this in the comments.
    Since the changed are moved inside the fmt0 test which is not approved
    for now I hope it is OK.

Regards,
Pierre

Pierre Morel (6):
  s390x: css: Store CSS Characteristics
  s390x: css: simplifications of the tests
  s390x: css: extending the subchannel modifying functions
  s390x: css: implementing Set CHannel Monitor
  s390x: css: testing measurement block format 0
  s390x: css: testing measurement block format 1

 lib/s390x/css.h     | 115 ++++++++++++++++++++-
 lib/s390x/css_lib.c | 236 ++++++++++++++++++++++++++++++++++++++++----
 s390x/css.c         | 216 ++++++++++++++++++++++++++++++++++++++--
 3 files changed, 540 insertions(+), 27 deletions(-)

-- 
2.17.1

changelog:

from v4:

- no modification of test_senseid() in the simplification patch,
  replaced by a new function in the fmt0 patch
  (Pierre)

- suppress report_info() in the interrupt routine.
  (Pierre)

- in chsc_scsc, rationalise the reserved area name.
  (Janosch)

- use assert for errors that should never happen
  like register_io_int_func()
  (Janosch)

- Changed css_general_feature to css_test_general_feature
  same for css_test_chsc_feature
  (Janosch)

- use report_abort() for hard failures in tests
  (Janosch, Connie)


from v3:

- stay coherent and use uintX_t types in css.h
  (Janosch)

- reworking test versus library to leave the reports
  mostly inside the tests
  (Janosh)

- Restructured some tests to use booleans instead of int
  this simplifies testing.
  (inspired by comments from Janosch)

- rewordings and orthograph (Measurement !!!)
  (Connie)

- stop measurement at the channel too before freeing the
  MB memory.
  (Connie)

- split out the subchannel-modifying functions into a
  separate patch
  (Connie)

- move msch_with_wrong_fmt1_mbo() from the library
  into the tests
  (Janosch)

- Suppress redundancy in the prefixes of format0/1 tests
  (Janosch)

from v2:

- stop measurement before freeing memory
  (Connie)

- added a css_disable_mb()
  (Connie)

- several rewriting of comments and commits
  (Connie)

- modified eroneous test for MB index for fmt0
  (Pierre)

- modified eroneous test for unaligned MBO for fmt1
  (Pierre)

- several small coding style issues corrected
  (Pierre)

from v1:

- check the return code of CHSC
  (Connie)

- reporting in css_init
  (Connie)

- added braces when a loop contains several statement
  (Thomas)

- changed retval to success in boolean function
  (Thomas)

- suppress goto retries
  (thomas)

- rewording and use correct return types in css_enabled
  (Janosch)

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

end of thread, other threads:[~2021-03-11 10:27 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-09 12:51 [kvm-unit-tests PATCH v5 0/6] CSS Mesurement Block Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 1/6] s390x: css: Store CSS Characteristics Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 2/6] s390x: css: simplifications of the tests Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 3/6] s390x: css: extending the subchannel modifying functions Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 4/6] s390x: css: implementing Set CHannel Monitor Pierre Morel
2021-03-09 16:56   ` Cornelia Huck
2021-03-11 10:20     ` Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 5/6] s390x: css: testing measurement block format 0 Pierre Morel
2021-03-09 17:05   ` Cornelia Huck
2021-03-11 10:26     ` Pierre Morel
2021-03-09 12:51 ` [kvm-unit-tests PATCH v5 6/6] s390x: css: testing measurement block format 1 Pierre Morel
2021-03-09 17:07   ` Cornelia Huck
2021-03-11 10:26     ` Pierre Morel
2021-03-09 16:54 ` [kvm-unit-tests PATCH v5 0/6] CSS Mesurement Block Cornelia Huck
2021-03-09 17:08   ` Cornelia Huck
2021-03-11 10:19     ` Pierre Morel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.