Message ID | 20220722233614.7254-3-iii@linux.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | accel/tcg: Test unaligned stores to s390x low-address-protected lowcore | expand |
On 7/23/22 05:06, Ilya Leoshkevich wrote: > Add a small test to avoid regressions. > > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> Acked-by: Richard Henderson <richard.henderson@linaro.org> r~ > --- > tests/tcg/s390x/Makefile.softmmu-target | 9 +++++++++ > tests/tcg/s390x/unaligned-lowcore.S | 19 +++++++++++++++++++ > 2 files changed, 28 insertions(+) > create mode 100644 tests/tcg/s390x/Makefile.softmmu-target > create mode 100644 tests/tcg/s390x/unaligned-lowcore.S > > diff --git a/tests/tcg/s390x/Makefile.softmmu-target b/tests/tcg/s390x/Makefile.softmmu-target > new file mode 100644 > index 0000000000..a34fa68473 > --- /dev/null > +++ b/tests/tcg/s390x/Makefile.softmmu-target > @@ -0,0 +1,9 @@ > +S390X_SRC=$(SRC_PATH)/tests/tcg/s390x > +VPATH+=$(S390X_SRC) > +QEMU_OPTS=-action panic=exit-failure -kernel > + > +%: %.S > + $(CC) -march=z13 -m64 -nostartfiles -static -Wl,-Ttext=0 \ > + -Wl,--build-id=none $< -o $@ > + > +TESTS += unaligned-lowcore > diff --git a/tests/tcg/s390x/unaligned-lowcore.S b/tests/tcg/s390x/unaligned-lowcore.S > new file mode 100644 > index 0000000000..246b517f11 > --- /dev/null > +++ b/tests/tcg/s390x/unaligned-lowcore.S > @@ -0,0 +1,19 @@ > + .org 0x1D0 /* program new PSW */ > + .quad 0x2000000000000, 0 /* disabled wait */ > + .org 0x200 /* lowcore padding */ > + > + .globl _start > +_start: > + lctlg %c0,%c0,_c0 > + vst %v0,_unaligned > + lpswe quiesce_psw > + > + .align 8 > +quiesce_psw: > + .quad 0x2000000000000,0xfff /* see is_special_wait_psw() */ > +_c0: > + .quad 0x10060000 /* lowcore protection, AFP, VX */ > + > + .byte 0 > +_unaligned: > + .octa 0
diff --git a/tests/tcg/s390x/Makefile.softmmu-target b/tests/tcg/s390x/Makefile.softmmu-target new file mode 100644 index 0000000000..a34fa68473 --- /dev/null +++ b/tests/tcg/s390x/Makefile.softmmu-target @@ -0,0 +1,9 @@ +S390X_SRC=$(SRC_PATH)/tests/tcg/s390x +VPATH+=$(S390X_SRC) +QEMU_OPTS=-action panic=exit-failure -kernel + +%: %.S + $(CC) -march=z13 -m64 -nostartfiles -static -Wl,-Ttext=0 \ + -Wl,--build-id=none $< -o $@ + +TESTS += unaligned-lowcore diff --git a/tests/tcg/s390x/unaligned-lowcore.S b/tests/tcg/s390x/unaligned-lowcore.S new file mode 100644 index 0000000000..246b517f11 --- /dev/null +++ b/tests/tcg/s390x/unaligned-lowcore.S @@ -0,0 +1,19 @@ + .org 0x1D0 /* program new PSW */ + .quad 0x2000000000000, 0 /* disabled wait */ + .org 0x200 /* lowcore padding */ + + .globl _start +_start: + lctlg %c0,%c0,_c0 + vst %v0,_unaligned + lpswe quiesce_psw + + .align 8 +quiesce_psw: + .quad 0x2000000000000,0xfff /* see is_special_wait_psw() */ +_c0: + .quad 0x10060000 /* lowcore protection, AFP, VX */ + + .byte 0 +_unaligned: + .octa 0
Add a small test to avoid regressions. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> --- tests/tcg/s390x/Makefile.softmmu-target | 9 +++++++++ tests/tcg/s390x/unaligned-lowcore.S | 19 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 tests/tcg/s390x/Makefile.softmmu-target create mode 100644 tests/tcg/s390x/unaligned-lowcore.S