|
From: | Thomas Huth |
Subject: | Re: [RFC PATCH] tests/tcg: drop -cpu max from s390x sha512-mvx invocation |
Date: | Thu, 10 Mar 2022 11:21:46 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.6.0 |
On 10/03/2022 09.36, Thomas Huth wrote:
On 09/03/2022 12.22, Alex Bennée wrote:With -cpu max we get a warning: qemu-s390x: warning: 'msa5-base' requires 'kimd-sha-512'. But dropping the -cpu max and it still runs fine. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Cc: Thomas Huth <thuth@redhat.com> --- tests/tcg/s390x/Makefile.target | 2 -- 1 file changed, 2 deletions(-)diff --git a/tests/tcg/s390x/Makefile.target b/tests/tcg/s390x/Makefile.targetindex 257c568c58..7aa502a557 100644 --- a/tests/tcg/s390x/Makefile.target +++ b/tests/tcg/s390x/Makefile.target @@ -34,6 +34,4 @@ sha512-mvx: CFLAGS=-march=z13 -mvx -O3 sha512-mvx: sha512.c $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS) -run-sha512-mvx: QEMU_OPTS+=-cpu max - TESTS+=sha512-mvxOk, this helps to get rid of the warnings, thus feel free to add: Tested-by: Thomas Huth <thuth@redhat.com>However, the error still persists. I now had a closer look by running the test with "qemu-s390x" on my z15 machine directly, and all tests are failing! The problem happens with both, gcc v11.2.1 and clang v13.0.1. The problem goes away (i.e. test works fine) if I compile the code with -O1 instead of -O3, or if I use GCC v8.5 instead. I'll try to find out more, but as a temporary workaround, we could also switch to -O1 instead of -O3.
I noticed that the problem does not occur when running the test natively on my s390x box, or via qemu-s390x on my x86 laptop, or when running it via qemu-s390x v6.1.0 on my s390x box. So it's something wrong in the TCG backend, I think, and I was able to bisect the issue down to this commit here: $ git bisect bad 9bca986df88b8ea46b100e3d21cc9e653c83e0b3 is the first bad commit commit 9bca986df88b8ea46b100e3d21cc9e653c83e0b3 Author: Richard Henderson <richard.henderson@linaro.org> Date: Mon Sep 14 20:36:36 2020 -0700 tcg/s390x: Implement TCG_TARGET_HAS_bitsel_vec Richard, could you please have a look? I've uploaded my statically linked binary that shows the problem here: http://people.redhat.com/~thuth/data/sha512 When running on a z15 s390x host with current QEMU master, the test fails: $ ./qemu-s390x -cpu max ~/sha512 qemu-s390x: warning: 'msa5-base' requires 'kimd-sha-512'. qemu-s390x: warning: 'msa5-base' requires 'klmd-sha-512'. 1..1 h : 0000: 38 31 a6 a6 15 5e 50 9d ee 59 a7 f4 51 eb 35 32 81...^P..Y..Q.52 h : 0010: 4d 8f 8f 2d f6 e3 70 88 94 74 0f 98 fd ee 23 88 M..-..p..t....#. h : 0020: 9f 4d e5 ad b0 c5 01 0d fb 55 5c da 77 c8 ab 5d .M.......U\.w..] h : 0030: c9 02 09 4c 52 de 32 78 f3 5a 75 eb c2 5f 09 3a ...LR.2x.Zu.._.: got : 0000: 7b 47 7b 48 1a 49 1a 49 79 48 7d 7f 7d 47 79 7d {G{H.I.IyH}.}Gy} got : 0010: 1a 7f 7d 40 1a 48 19 4b 7d 48 1a 7b 7b 48 7b 49 ..}@.H.K}H.{{H{I got : 0020: 7f 7d 7f 7f 7f 7f 7b 7d 19 49 1a 48 7f 47 7f 47 .}....{}.I.H.G.G got : 0030: 79 4b 7f 4b 77 7f 79 47 19 7d 1a 7f 7b 48 7f 47 yK.Kw.yG.}..{H.G got : 0040: 79 7f 7f 7d 1a 48 1a 7d 19 47 1c 48 77 48 77 7d y..}.H.}.G.HwHw} got : 0050: 19 7b 7d 48 7d 7f 19 7b 7f 48 1c 47 1a 7b 7d 7d .{}H}..{.H.G.{}} got : 0060: 1c 40 77 49 77 40 7f 7f 7d 49 19 7f 7b 49 7f 47 .@wIw@..}I..{I.G got : 0070: 19 48 7d 7b 7f 48 1a 7b 1c 49 7d 7f 77 40 7b 7b .H}{.H.{.I}.w@{{ got : 0080: 00 . not ok 1 - do_test(&tests[0]) # Failed test (sha512.c:main() at line 1046) # Looks like you failed 1 tests of 1. When running on my x86 laptop, the test succeeds: $ ./qemu-s390x -cpu max ~/sha512 qemu-s390x: warning: 'msa5-base' requires 'kimd-sha-512'. qemu-s390x: warning: 'msa5-base' requires 'klmd-sha-512'. 1..1 h : 0000: 38 31 a6 a6 15 5e 50 9d ee 59 a7 f4 51 eb 35 32 81...^P..Y..Q.52 h : 0010: 4d 8f 8f 2d f6 e3 70 88 94 74 0f 98 fd ee 23 88 M..-..p..t....#. h : 0020: 9f 4d e5 ad b0 c5 01 0d fb 55 5c da 77 c8 ab 5d .M.......U\.w..] h : 0030: c9 02 09 4c 52 de 32 78 f3 5a 75 eb c2 5f 09 3a ...LR.2x.Zu.._.: got : 0000: 33 38 33 31 61 36 61 36 31 35 35 65 35 30 39 64 3831a6a6155e509d got : 0010: 65 65 35 39 61 37 66 34 35 31 65 62 33 35 33 32 ee59a7f451eb3532 got : 0020: 34 64 38 66 38 66 32 64 66 36 65 33 37 30 38 38 4d8f8f2df6e37088 got : 0030: 39 34 37 34 30 66 39 38 66 64 65 65 32 33 38 38 94740f98fdee2388 got : 0040: 39 66 34 64 65 35 61 64 62 30 63 35 30 31 30 64 9f4de5adb0c5010d got : 0050: 66 62 35 35 35 63 64 61 37 37 63 38 61 62 35 64 fb555cda77c8ab5d got : 0060: 63 39 30 32 30 39 34 63 35 32 64 65 33 32 37 38 c902094c52de3278 got : 0070: 66 33 35 61 37 35 65 62 63 32 35 66 30 39 33 61 f35a75ebc25f093a got : 0080: 00 . ok 1 - do_test(&tests[0]) BTW, we recently also saw some issues with the migration qtest on a s390x host, maybe that's related: https://app.travis-ci.com/gitlab/qemu-project/qemu/jobs/562674331#L7834 https://app.travis-ci.com/github/huth/qemu/jobs/562290832#L7783 ? Thomas
[Prev in Thread] | Current Thread | [Next in Thread] |