Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Guinevere Larsen <blarsen@redhat.com>
To: "Willgerodt, Felix" <felix.willgerodt@intel.com>,
	"gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
Subject: Re: [PING][PATCH 0/3] Small step in supporting AVX instructions
Date: Thu, 6 Jun 2024 10:45:33 -0300	[thread overview]
Message-ID: <1a3f7ddf-3593-4df6-b7f5-bc332801856f@redhat.com> (raw)
In-Reply-To: <MN2PR11MB4566DFE5D1D55DA6D8601CE28EFA2@MN2PR11MB4566.namprd11.prod.outlook.com>

On 6/6/24 10:36, Willgerodt, Felix wrote:
>>> What I did is run some testing on your patches. I found this failure on two
>> nodes
>>> (Fedora 39 and Ubuntu 22.04, just using gcc and unix.exp and parallel
>> testing):
>>> (gdb) PASS: gdb.reverse/step-precsave.exp: breakpoint at end of main
>>> continue^M
>>> Continuing.^M
>>> Process record does not support VEX instruction 0x78 at address
>> 0x7ffff7e53315.^M
>>> Process record: inferior program stopped.^M
>>> ^M
>>> Program stopped.^M
>>> 0x00007ffff7e53315 in __memset_avx2_unaligned_erms () from
>> /lib64/libc.so.6^M
>>> (gdb) FAIL: gdb.reverse/step-precsave.exp: run to end of main
>>>
>>>
>>> Though I didn't see this when I ran it manually on a different Ubuntu 22.04
>> node.
>>> There I saw this:
>>>
>>> (gdb) PASS: gdb.reverse/step-precsave.exp: breakpoint at end of main
>>> continue^M
>>> Continuing.^M
>>> Process record does not support instruction bound.^M
>>> Process record does not support instruction 0x62 at address
>> 0x7ffff7f289c7.^M
>>> Process record: failed to record execution log.^M
>>> ^M
>>> Program stopped.^M
>>> 0x00007ffff7f289c7 in __memset_evex_unaligned_erms () at
>> ../sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S:182^M
>>> warning: 182    ../sysdeps/x86_64/multiarch/memset-vec-unaligned-
>> erms.S: No such file or directory^M
>>> (gdb) KFAIL: gdb.reverse/step-precsave.exp: run to end of main (PRMS:
>> record/30807)
>>> I didn't have the time to investigate further. Not sure if the error messages
>> tell you enough.
>>
>> Yeah, that's enough to give me a sense of what's up. These are the
>> motivators for this series (though the second one is further in the
>> future). GDB doesn't know how to disassemble AVX, AVX2 and AVX512
>> instructions, which is what leads to "process record does not support
>> (...)".
>>
>> The KFAIL (second error) is with regard to AVX-512, identified by the
>> prefix 0x62. The first one used to have a KFAIL too, but I changed the
>> output message so now it just shows up as FAIL (used to point to
>> https://sourceware.org/bugzilla/show_bug.cgi?id=23188). I will update
>> the step-precsave regexp to identify the current issue and emit a KFAIL
>> again.
>>
>>> I can help if you want to know more about the CPUs or libraries.
>>> Note that the two machines where it failed, it didn't fail for master.
>> I don't understand how it could have passed on the same machines. I'm
>> more curious about the output when it did pass, if you still have it.
>> Did it use a different path for memset?
>>
> I think the PATH difference is just a Fedora/Ubuntu difference.
> I copied the Fedora 39 one above for the FAIL case.
> And I think I might have confused you with "it didn't fail for master."
> Sorry if that was the case. I meant that it KFAIL'ed on master.
> I didn't mean to say it produced a PASS.
Oh ok, yes I was confused by it not failing on master. I will fix the 
precsave test case and do another pass on the gdb.reverse subdirectory 
to see if there are any other tests I missed. Thanks for checking!

-- 
Cheers,
Guinevere Larsen
She/Her/Hers

>
> This is Fedora 39 with our master:
>
> (gdb) PASS: gdb.reverse/step-precsave.exp: breakpoint at end of main
> continue^M
> Continuing.^M
> Process record does not support instruction 0xc5 at address 0x7ffff7e53304.^M
> Process record: failed to record execution log.^M
> ^M
> Program stopped.^M
> 0x00007ffff7e53304 in __memset_avx2_unaligned_erms () from /lib64/libc.so.6^M
> (gdb) KFAIL: gdb.reverse/step-precsave.exp: run to end of main (PRMS: record/23188)
>
> So 3 different hex values seem to be the difference.
>
>
> For completeness sake, here is the failing Ubuntu 22.04 log (your patches):
>
> (gdb) PASS: gdb.reverse/step-precsave.exp: breakpoint at end of main
> continue^M
> Continuing.^M
> Process record does not support VEX instruction 0x78 at address 0x7ffff7f25f8b.^M
> Process record: inferior program stopped.^M
> ^M
> Program stopped.^M
> 0x00007ffff7f25f8b in __memset_avx2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S:182^M
> warning: 182    ../sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S: No such file or directory^M
> (gdb) FAIL: gdb.reverse/step-precsave.exp: run to end of main
>
> Regards,
> Felix
> Intel Deutschland GmbH
> Registered Address: Am Campeon 10, 85579 Neubiberg, Germany
> Tel: +49 89 99 8853-0, www.intel.de
> Managing Directors: Sean Fennelly, Jeffrey Schneiderman, Tiffany Doon Silva
> Chairperson of the Supervisory Board: Nicole Lau
> Registered Office: Munich
> Commercial Register: Amtsgericht Muenchen HRB 186928


      reply	other threads:[~2024-06-06 13:46 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-21 20:27 [PATCH " Guinevere Larsen
2024-05-21 20:27 ` [PATCH 1/3] gdb: Start supporting AVX instruction Guinevere Larsen
2024-06-05 16:11   ` Tom Tromey
2024-06-05 17:33     ` Guinevere Larsen
2024-06-06 17:01       ` Tom Tromey
2024-05-21 20:27 ` [PATCH 2/3] gdb/record: add support to vmovd and vmovq instructions Guinevere Larsen
2024-06-05 16:13   ` Tom Tromey
2024-06-05 18:24     ` Guinevere Larsen
2024-06-05 19:53       ` Guinevere Larsen
2024-05-21 20:28 ` [PATCH 3/3] gdb/record: add support to AVX unpack instructions Guinevere Larsen
2024-06-04 19:10 ` [PING][PATCH 0/3] Small step in supporting AVX instructions Guinevere Larsen
2024-06-05 16:13   ` Tom Tromey
2024-06-06  8:16   ` Willgerodt, Felix
2024-06-06 12:50     ` Guinevere Larsen
2024-06-06 13:36       ` Willgerodt, Felix
2024-06-06 13:45         ` Guinevere Larsen [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1a3f7ddf-3593-4df6-b7f5-bc332801856f@redhat.com \
    --to=blarsen@redhat.com \
    --cc=felix.willgerodt@intel.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox