mbox

[kvm-unit-tests,GIT,PULL,00/18] s390x: new edat, diag258 and STFLE tests; fixes for genprotimg >= 2.36.0; cleanups for snippets and makefiles

Message ID 20250203083606.22864-1-nrb@linux.ibm.com (mailing list archive)
State New
Headers show

Pull-request

https://gitlab.com/Nico-Boehr/kvm-unit-tests.git pr-2025-01-31

Message

Nico Boehr Feb. 3, 2025, 8:35 a.m. UTC
Hi Paolo and/or Thomas,

Changes in this pull request:
- cpacf query function were reworked in the kernel, that fix was
  cherry-picked by Nina. This fixes issues with possible incorrect
  instruction format
- Claudio extended the edat test for a special case with a 2G page at
  the end of memory to ensure the correct addressing exception happens.
- I added a test for diag258 where we had some issues with
  virtual-physical address confusion.
- Nina took the time to add library functions that help exiting from a
  snippet s390x.
- Nina contributed a test for STFLE interpretive execution. Thank you!
- Marc did a lot of magic fixing issues in our Makefiles. This fixes
  several issues with out-of-tree-builds. We now also build out-of-tree
  in our downstream CI to avoid unpleasant surprises for maintainers :)
  Marc, thanks for contributing your Makefile knowledge and for turning my
  complaints into something productive
- Janosch also invested some time to clean up snippets and Makefiles,
  which made the code a lot nicer, thanks for that as well!
- we have a compatibility issue with genprotimg
  versions >= 2.36.0. Thanks Marc to fixing that. You should upgrade
  kvm-unit-tests if you use genprotimg >= 2.36.0!

Note that there are two checkpatch errors:
> ERROR: space prohibited before that ':' (ctx:WxW)
I would suggest to ignore them, the code really looks ugly otherwise.

Thanks
Nico

MERGE: https://gitlab.com/kvm-unit-tests/kvm-unit-tests/-/merge_requests/73

PIPELINE: https://gitlab.com/Nico-Boehr/kvm-unit-tests/-/pipelines/1650287644

PULL: https://gitlab.com/Nico-Boehr/kvm-unit-tests.git pr-2025-01-31
----
The following changes since commit 2e66bb4b9423970ceb6ea195bd8697733bcd9071:

  Makefile: Use 'vpath' for out-of-source builds and not 'VPATH' (2025-01-31 10:40:51 +0100)

are available in the Git repository at:

  https://gitlab.com/Nico-Boehr/kvm-unit-tests.git pr-2025-01-31

for you to fetch changes up to 12b23c79ac6c5af4f9351c7502c4a3ffccf4b8eb:

  s390x/Makefile: Add auxinfo.o to cflatobjs (2025-01-31 13:02:25 +0100)

----------------------------------------------------------------
Claudio Imbrenda (1):
      s390x: edat: test 2G large page spanning end of memory

Janosch Frank (4):
      s390x/Makefile: Split snippet makefile rules into new file
      s390x/Makefile: Add more comments
      s390x: Move SIE assembly into new file
      lib: s390x: Split SIE fw structs from lib structs

Marc Hartmayer (4):
      s390x/Makefile: snippets: Add separate target for the ELF snippets
      s390x: Support newer version of genprotimg
      s390x/Makefile: Make sure the linker script is generated in the build directory
      s390x/Makefile: Add auxinfo.o to cflatobjs

Nico Boehr (2):
      s390x: edat: move LC_SIZE to arch_def.h
      s390x: add test for diag258

Nina Schoetterl-Glausch (7):
      s390x: Split and rework cpacf query functions
      s390x: lib: Remove double include
      s390x: Add sie_is_pv
      s390x: Add function for checking diagnose intercepts
      s390x: Add library functions for exiting from snippet
      s390x: Use library functions for snippet exit
      s390x: Add test for STFLE interpretive execution (format-0)

 lib/s390x/asm/arch_def.h          |  17 +++
 lib/s390x/asm/cpacf.h             |  77 ++++++++++--
 lib/s390x/asm/facility.h          |  10 +-
 lib/s390x/asm/sie-arch.h          | 238 +++++++++++++++++++++++++++++++++++
 lib/s390x/pv_icptdata.h           |  42 -------
 lib/s390x/sie-icpt.c              |  60 +++++++++
 lib/s390x/sie-icpt.h              |  39 ++++++
 lib/s390x/sie.c                   |   5 +-
 lib/s390x/sie.h                   | 237 ++--------------------------------
 lib/s390x/snippet-exit.h          |  45 +++++++
 s390x/Makefile                    |  75 ++++++-----
 s390x/cpu-sie.S                   |  74 +++++++++++
 s390x/cpu.S                       |  64 ----------
 s390x/diag258.c                   | 259 ++++++++++++++++++++++++++++++++++++++
 s390x/edat.c                      |  19 ++-
 s390x/pv-diags.c                  |   9 +-
 s390x/pv-icptcode.c               |  12 +-
 s390x/pv-ipl.c                    |   8 +-
 s390x/sie-dat.c                   |  12 +-
 s390x/snippets/Makefile           |  35 ++++++
 s390x/snippets/c/sie-dat.c        |  19 +--
 s390x/snippets/c/stfle.c          |  29 +++++
 s390x/snippets/lib/snippet-exit.h |  28 +++++
 s390x/stfle-sie.c                 | 138 ++++++++++++++++++++
 s390x/unittests.cfg               |   6 +
 25 files changed, 1124 insertions(+), 433 deletions(-)
 create mode 100644 lib/s390x/asm/sie-arch.h
 delete mode 100644 lib/s390x/pv_icptdata.h
 create mode 100644 lib/s390x/sie-icpt.c
 create mode 100644 lib/s390x/sie-icpt.h
 create mode 100644 lib/s390x/snippet-exit.h
 create mode 100644 s390x/cpu-sie.S
 create mode 100644 s390x/diag258.c
 create mode 100644 s390x/snippets/Makefile
 create mode 100644 s390x/snippets/c/stfle.c
 create mode 100644 s390x/snippets/lib/snippet-exit.h
 create mode 100644 s390x/stfle-sie.c

Comments

Thomas Huth Feb. 3, 2025, 9:11 a.m. UTC | #1
On 03/02/2025 09.35, Nico Boehr wrote:
> Hi Paolo and/or Thomas,
> 
> Changes in this pull request:
> - cpacf query function were reworked in the kernel, that fix was
>    cherry-picked by Nina. This fixes issues with possible incorrect
>    instruction format
> - Claudio extended the edat test for a special case with a 2G page at
>    the end of memory to ensure the correct addressing exception happens.
> - I added a test for diag258 where we had some issues with
>    virtual-physical address confusion.
> - Nina took the time to add library functions that help exiting from a
>    snippet s390x.
> - Nina contributed a test for STFLE interpretive execution. Thank you!
> - Marc did a lot of magic fixing issues in our Makefiles. This fixes
>    several issues with out-of-tree-builds. We now also build out-of-tree
>    in our downstream CI to avoid unpleasant surprises for maintainers :)
>    Marc, thanks for contributing your Makefile knowledge and for turning my
>    complaints into something productive
> - Janosch also invested some time to clean up snippets and Makefiles,
>    which made the code a lot nicer, thanks for that as well!
> - we have a compatibility issue with genprotimg
>    versions >= 2.36.0. Thanks Marc to fixing that. You should upgrade
>    kvm-unit-tests if you use genprotimg >= 2.36.0!
> 
> Note that there are two checkpatch errors:
>> ERROR: space prohibited before that ':' (ctx:WxW)
> I would suggest to ignore them, the code really looks ugly otherwise.
> 
> Thanks
> Nico

Thanks, merged now.

  Thomas