public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: "Willgerodt, Felix" <felix.willgerodt@intel.com>
To: Guinevere Larsen <blarsen@redhat.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 13:36:48 +0000	[thread overview]
Message-ID: <MN2PR11MB4566DFE5D1D55DA6D8601CE28EFA2@MN2PR11MB4566.namprd11.prod.outlook.com> (raw)
In-Reply-To: <4352e37e-f194-4fe5-83fa-f1fafc598afb@redhat.com>

> > 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.

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:36 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 [this message]
2024-06-06 13:45         ` Guinevere Larsen

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=MN2PR11MB4566DFE5D1D55DA6D8601CE28EFA2@MN2PR11MB4566.namprd11.prod.outlook.com \
    --to=felix.willgerodt@intel.com \
    --cc=blarsen@redhat.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).