* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
@ 2009-10-07 15:12 ` jan dot kratochvil at redhat dot com
2009-10-07 15:51 ` teawater at gmail dot com
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jan dot kratochvil at redhat dot com @ 2009-10-07 15:12 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From jan dot kratochvil at redhat dot com 2009-10-07 15:12 -------
Checked it affects also Fedora 11 - expecting it is since glibc-2.10 (May 2009).
When the record mode singlesteps it may simulate an unknown CPU to not to use
the optimized functions according to the glibc __init_cpu_features() detection.
Still the full CPU support sure would be better, this is now a bit blocker.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
2009-10-07 15:12 ` [Bug gdb/10743] " jan dot kratochvil at redhat dot com
@ 2009-10-07 15:51 ` teawater at gmail dot com
2009-10-11 10:50 ` pierre dot poissinger at gmail dot com
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: teawater at gmail dot com @ 2009-10-07 15:51 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From teawater at gmail dot com 2009-10-07 15:51 -------
Thanks Jan, this insn is still not support by prec.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
2009-10-07 15:12 ` [Bug gdb/10743] " jan dot kratochvil at redhat dot com
2009-10-07 15:51 ` teawater at gmail dot com
@ 2009-10-11 10:50 ` pierre dot poissinger at gmail dot com
2009-10-12 7:17 ` teawater at gmail dot com
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: pierre dot poissinger at gmail dot com @ 2009-10-11 10:50 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From pierre dot poissinger at gmail dot com 2009-10-11 10:50 -------
I have exactly the same problem on ubuntu 9.04 x86_64 with glibc 2.9-4ubuntu6.1
but with memset.
To overcome this, I do the following in gdb before starting target record, to
work around:
set __x86_64_preferred_memory_instruction=0
Following memset.S (and cacheinfo.c), this will force memset to use 'regular
instruction' instead of SSE - and it allows me to reverse debug :-)
Not sure this is honored in glibc 2.10 for strrchr but you could give a shoot.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pierre dot poissinger at
| |gmail dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
` (2 preceding siblings ...)
2009-10-11 10:50 ` pierre dot poissinger at gmail dot com
@ 2009-10-12 7:17 ` teawater at gmail dot com
2009-10-12 8:19 ` jan dot kratochvil at redhat dot com
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: teawater at gmail dot com @ 2009-10-12 7:17 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From teawater at gmail dot com 2009-10-12 07:17 -------
Thanks Pierre, this idea is very cool.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
` (3 preceding siblings ...)
2009-10-12 7:17 ` teawater at gmail dot com
@ 2009-10-12 8:19 ` jan dot kratochvil at redhat dot com
2009-10-12 9:56 ` pierre dot poissinger at gmail dot com
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jan dot kratochvil at redhat dot com @ 2009-10-12 8:19 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From jan dot kratochvil at redhat dot com 2009-10-12 08:19 -------
It does not work, __x86_64_preferred_memory_instruction is not used in strrchr,
please try:
echo -e "#include <string.h>\nint main (int argc, char **argv) { return strrchr
(argv[0], '/') - argv[0]; }" | gcc -o 1 -Wall -g -x c -; ./gdb -nx -ex start -ex
'set __x86_64_preferred_memory_instruction=0' -ex record -ex c ./1
GNU gdb (GDB) 7.0.50.20091012-cvs
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/jkratoch/redhat/gdb-clean/1...done.
Temporary breakpoint 1 at 0x4004d3: file <stdin>, line 2.
Starting program: /home/jkratoch/redhat/gdb-clean/1
Temporary breakpoint 1, main (argc=1, argv=0x7fffffffd4c8) at <stdin>:2
2 <stdin>: No such file or directory.
in <stdin>
Continuing.
Process record doesn't support instruction 0xf6e at address 0x36b5a7f961.
Process record: failed to record execution log.
Program received signal SIGTRAP, Trace/breakpoint trap.
strrchr () at ../sysdeps/x86_64/strrchr.S:26
26 movd %esi, %xmm1
Current language: auto
The current source language is "auto; currently asm".
(gdb) p __x86_64_preferred_memory_instruction
$1 = 0
(gdb) up
#1 0x00000000004004e7 in main (argc=1, argv=0x7fffffffd4c8) at <stdin>:2
2 <stdin>: No such file or directory.
in <stdin>
(gdb) x/i $pc-5
0x4004e2 <main+30>: callq 0x4003c8 <strrchr@plt>
(gdb) x/i 0x4003c8
0x4003c8 <strrchr@plt>: jmpq *0x2004b2(%rip) # 0x600880
<_GLOBAL_OFFSET_TABLE_+32>
(gdb) x/gx 0x600880
0x600880 <_GLOBAL_OFFSET_TABLE_+32>: 0x00000036b5a7f960
(gdb) x/i 0x00000036b5a7f960
0x36b5a7f960 <strrchr>: movd %esi,%xmm1
__x86_64_preferred_memory_instruction is just not in use there, neither if you
set it to any value or if you watch it.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
` (4 preceding siblings ...)
2009-10-12 8:19 ` jan dot kratochvil at redhat dot com
@ 2009-10-12 9:56 ` pierre dot poissinger at gmail dot com
2009-10-12 13:33 ` jan dot kratochvil at redhat dot com
2010-08-01 9:07 ` jan dot kratochvil at redhat dot com
7 siblings, 0 replies; 9+ messages in thread
From: pierre dot poissinger at gmail dot com @ 2009-10-12 9:56 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From pierre dot poissinger at gmail dot com 2009-10-12 09:56 -------
Too bad.
I checked the glibc 2.10 src and the new string functions use SSE no matter what
:-( - so no 'easy' workaround.
So, unless you hack the glibc to support this workaround, I guess you could
still create your own lib with strlen, strchr, strchrnul, strrchr, memchr, and
rawmemchr and use preload to force ld to link with them instead of glibc ones.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
` (5 preceding siblings ...)
2009-10-12 9:56 ` pierre dot poissinger at gmail dot com
@ 2009-10-12 13:33 ` jan dot kratochvil at redhat dot com
2010-08-01 9:07 ` jan dot kratochvil at redhat dot com
7 siblings, 0 replies; 9+ messages in thread
From: jan dot kratochvil at redhat dot com @ 2009-10-12 13:33 UTC (permalink / raw)
To: gdb-prs
--
What |Removed |Added
----------------------------------------------------------------------------
BugsThisDependsOn| |10760
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug gdb/10743] Process record doesn't support instruction 0xf6e
2009-10-07 14:11 [Bug gdb/10743] New: Process record doesn't support instruction 0xf6e jan dot kratochvil at redhat dot com
` (6 preceding siblings ...)
2009-10-12 13:33 ` jan dot kratochvil at redhat dot com
@ 2010-08-01 9:07 ` jan dot kratochvil at redhat dot com
7 siblings, 0 replies; 9+ messages in thread
From: jan dot kratochvil at redhat dot com @ 2010-08-01 9:07 UTC (permalink / raw)
To: gdb-prs
------- Additional Comments From jan dot kratochvil at redhat dot com 2010-08-01 09:07 -------
At least the Comment 5 reproducer seems to be fixed on:
GNU gdb (GDB) 7.2.50.20100731-cvs
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
http://sourceware.org/bugzilla/show_bug.cgi?id=10743
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
^ permalink raw reply [flat|nested] 9+ messages in thread