Re: [PATCH v3 1/5] KVM: s390: selftests: Add regression tests for SORTL and DFLTCC CPU subfunctions

Christoph Schlameuss
2024-08-23T14:47:39Z

On Fri Aug 23, 2024 at 3:05 PM CEST, Hariharan Mari wrote:
> Introduce new regression tests to verify the ASM inline block in the SORTL
> and DFLTCC CPU subfunctions for the s390x architecture. These tests ensure
> that future changes to the ASM code are properly validated.
>
> The test procedure:
>
> 1. Create a VM and request the KVM_S390_VM_CPU_MACHINE_SUBFUNC attribute
> from the KVM_S390_VM_CPU_MODEL group for this VM. This SUBFUNC attribute
> contains the results of all CPU subfunction instructions.
> 2. For each tested subfunction (SORTL and DFLTCC), execute the
> corresponding ASM instruction and capture the result array.
> 3. Perform a memory comparison between the results stored in the SUBFUNC
> attribute (obtained in step 1) and the ASM instruction results (obtained
> in step 2) for each tested subfunction.
>
> This process ensures that the KVM implementation accurately reflects the
> behavior of the actual CPU instructions for the tested subfunctions.
>
> Suggested-by: Janosch Frank <frankja@linux.ibm.com>
> Signed-off-by: Hariharan Mari <hari55@linux.ibm.com>
> Reviewed-by: Janosch Frank <frankja@linux.ibm.com>

LGTM

Reviewed-by: Christoph Schlameuss <schlameuss@linux.ibm.com>

> ---
> tools/testing/selftests/kvm/Makefile | 2 +
> .../selftests/kvm/include/s390x/facility.h | 50 +++++++++
> .../selftests/kvm/lib/s390x/facility.c | 14 +++
> .../kvm/s390x/cpumodel_subfuncs_test.c | 105 ++++++++++++++++++
> 4 files changed, 171 insertions(+)
> create mode 100644 tools/testing/selftests/kvm/include/s390x/facility.h
> create mode 100644 tools/testing/selftests/kvm/lib/s390x/facility.c
> create mode 100644 tools/testing/selftests/kvm/s390x/cpumodel_subfuncs_test.c …