* frysk meeting 2007-08-01 demo typescript
@ 2007-08-06 15:07 Mark Wielaard
0 siblings, 0 replies; only message in thread
From: Mark Wielaard @ 2007-08-06 15:07 UTC (permalink / raw)
To: frysk
Hi,
Here is the typescript of the demo we ran on 2007-08-01.
I only edited it slightly to add some comments between the demos.
Cheers,
Mark
-----------------------------------------------------------------------------
Sami showing the frame decorators to show inlined funcions on the call stack.
(This was done by patching the source slightly to put out more debug stuff)
-----------------------------------------------------------------------------
$ cd src/frysk-obj/frysk-core
$ ./TestRunner frysk.debuginfo.TestFrameDebugInfo
Running testFrameDebugInfoStackTrace(frysk.debuginfo.TestFrameDebugInfo) ...PASS
Running testFrameAdjustedAddress(frysk.debuginfo.TestFrameDebugInfo) ...UNRESOLVED
http://sourceware.org/bugzilla/show_bug.cgi?id=4676
Running testFrameScopes(frysk.debuginfo.TestFrameDebugInfo) ...UNRESOLVED
http://sourceware.org/bugzilla/show_bug.cgi?id=4677
Running testFrameScopesWorkAround(frysk.debuginfo.TestFrameDebugInfo) ...PASS
Running testGetInlinedSubroutines(frysk.debuginfo.TestFrameDebugInfo) ...DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_subprogram
DebugInfoFrame.getInlnedSubprograms() DW_TAG_compile_unit
PASS
Running testVirtualDebugInfoStackTrace(frysk.debuginfo.TestFrameDebugInfo) ...DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_lexical_block
DebugInfoFrame.getInlnedSubprograms() DW_TAG_inlined_subroutine
DebugInfoFrame.getInlnedSubprograms() DW_TAG_subprogram
DebugInfoFrame.getInlnedSubprograms() DW_TAG_compile_unit
Task #2789
#0 0x080483af in third(int arg3 = 6978720) /home/mark/src/frysk-obj/frysk-core/../../frysk/frysk-core/frysk/pkglibdir/funit-inlined.c#6
int var3 = < value unavailable at pc=0x80483af> line#< error >
* a = < value unavailable at pc=0x80483af> line#< error >
#1 0x080483af in second(int arg2 = 6978720) /home/mark/src/frysk-obj/frysk-core/../../frysk/frysk-core/frysk/pkglibdir/funit-inlined.c#6
int var2 = < value unavailable at pc=0x80483af> line#< error >
int var3 = < value unavailable at pc=0x80483af> line#< error >
* a = < value unavailable at pc=0x80483af> line#< error >
#2 0x080483af in first(int arg1 = 6978720) /home/mark/src/frysk-obj/frysk-core/../../frysk/frysk-core/frysk/pkglibdir/funit-inlined.c#6
int var1 = < value unavailable at pc=0x80483af> line#< error >
int var2 = < value unavailable at pc=0x80483af> line#< error >
int var3 = < value unavailable at pc=0x80483af> line#< error >
* a = < value unavailable at pc=0x80483af> line#< error >
#3 0x080483af in main () from /home/mark/src/frysk-obj/frysk-core/frysk/pkglibdir/funit-inlined
#4 0x006c0f70 in __libc_start_main () from /lib/libc-2.6.so
#5 0x080482c1 in _start () from /home/mark/src/frysk-obj/frysk-core/frysk/pkglibdir/funit-inlined
PASS
Running testValues(frysk.debuginfo.TestFrameDebugInfo) ...PASS
Running testColNumbers(frysk.debuginfo.TestFrameDebugInfo) ...PASS
Running testLineNumbers(frysk.debuginfo.TestFrameDebugInfo) ...PASS
Time: 0.158
There were 2 unresolved:
http://sourceware.org/bugzilla/show_bug.cgi?id=4677
http://sourceware.org/bugzilla/show_bug.cgi?id=4676
OK (9 tests)
----------------------------------------------------------------------------
[... A bash shell was started (pid = 2072) ...]
----------------------------------------------------------------------------
$ ./frysk/bindir/fhpd 2072
Attached to process 2072
(fhpd) disassemble -help
disassemble [OPTIONS] [startAddress] ||
disassemble [-OPTIONS] <startAddress> <endAddress>
disassemble Options:
-i, -instructions-only only print the instruction portion not the
parameters
-t, -no-truncate don't truncate the number of instructions printed
-s, -no-symbol don't print the symbol name
Standard Options:
-help print this help
disassemble the function surrounding the current pc, the function surrounding a given address, or a range of functions.
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from [vdso]
(fhpd) disassemble
Dump of assembler code for function: __kernel_vsyscall
0x110400 <__kernel_vsyscall+0>: int $0x80
*0x110402 <__kernel_vsyscall+2>: ret
End of assembly dump
(fhpd) down
#0 0x00110402 in __kernel_vsyscall () from [vdso]
(fhpd) disassemble
Dump of assembler code for function: __kernel_vsyscall
0x110400 <__kernel_vsyscall+0>: int $0x80
*0x110402 <__kernel_vsyscall+2>: ret
End of assembly dump
(fhpd) quit
Quitting...
---------------------------------------------------------------------------
[... Oops, that demo went wrong, no debug info available! ...]
Which was a great oppertunity for Teresa to show her fdebuginfo stuff.
---------------------------------------------------------------------------
$ ./fdebuginfo 2072
/lib/libnss_files-2.6.so ---
/lib/ld-2.6.so ---
/lib/libc-2.6.so ---
/lib/libdl-2.6.so ---
/lib/libtinfo.so.5.6 ---
/bin/bash /usr/lib/debug/bin/bash.debug
$ ./fdebugrpm 2072
Missing Debuginfo package(s)
============================
glibc-debuginfo
ncurses-debuginfo
Do you wish to install the above packages? [y/n]: y
Password or swipe finger:
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
fedora 100% |=========================| 2.1 kB 00:00
updates 100% |=========================| 1.9 kB 00:00
primary.sqlite.bz2 100% |=========================| 1.1 MB 00:03
Nothing to do
---------------------------------------------------------------------------
[... Oops, no debug repo enabled by default. Darn.
Install the packages listed above by hand then for now ...]
---------------------------------------------------------------------------
$ sudo yum --enablerepo=fedora-debuginfo install glibc-debuginfo ncurses-debuginfo
Loading "installonlyn" plugin
Setting up Install Process
Parsing package install arguments
fedora-debuginfo 100% |=========================| 1.9 kB 00:00
Resolving Dependencies
--> Running transaction check
---> Package ncurses-debuginfo.i386 0:5.6-6.20070303.fc7 set to be updated
---> Package glibc-debuginfo.i686 0:2.6-3 set to be updated
--> Processing Dependency: glibc-debuginfo-common = 2.6-3 for package: glibc-debuginfo
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package glibc-debuginfo-common.i386 0:2.6-3 set to be updated
---> Package glibc-debuginfo.i686 0:2.6-3 set to be updated
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
glibc-debuginfo i686 2.6-3 fedora-debuginfo 6.1 M
ncurses-debuginfo i386 5.6-6.20070303.fc7 fedora-debuginfo 1.1 M
Installing for dependencies:
glibc-debuginfo-common i386 2.6-3 fedora-debuginfo 12 M
Transaction Summary
=============================================================================
Install 3 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 19 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): glibc-debuginfo-2. 100% |=========================| 6.1 MB 00:20
(2/3): glibc-debuginfo-co 100% |=========================| 12 MB 00:35
(3/3): ncurses-debuginfo- 100% |=========================| 1.1 MB 00:03
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: glibc-debuginfo-common ######################### [1/3]
Installing: ncurses-debuginfo ######################### [2/3]
Installing: glibc-debuginfo ######################### [3/3]
Installed: glibc-debuginfo.i686 0:2.6-3 ncurses-debuginfo.i386 0:5.6-6.20070303.fc7
Dependency Installed: glibc-debuginfo-common.i386 0:2.6-3
Complete!
$ ./frysk/bindir/fdebuginfo 2072
/lib/libnss_files-2.6.so /usr/lib/debug/lib/libnss_files-2.6.so.debug
/lib/ld-2.6.so /usr/lib/debug/lib/ld-2.6.so.debug
/lib/libc-2.6.so /usr/lib/debug/lib/libc-2.6.so.debug
/lib/libdl-2.6.so /usr/lib/debug/lib/libdl-2.6.so.debug
/lib/libtinfo.so.5.6 /usr/lib/debug/lib/libtinfo.so.5.6.debug
/bin/bash /usr/lib/debug/bin/bash.debug
$ ./frysk/bindir/fhpd 2072
Attached to process 2072
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from [vdso]
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
#3 0x080c3c23 in [unknown] from /bin/bash
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
#5 0x080b3305 in rl_vi_delete () from /bin/bash
#6 0x08065a11 in yyparse () from /bin/bash
#7 0x08060d08 in read_secondary_line () from /bin/bash
#8 0x08062f7a in read_token () from /bin/bash
#9 0x08066121 in get_group_array () from /bin/bash
#10 0x0805ee11 in yyerror () from /bin/bash
#11 0x100bdb5f in [unknown] from Unknown
#12 0x0805eeed in yyerror () from /bin/bash
#13 0x0805d7d0 in main () from /bin/bash
#14 0x006c0f70 in __libc_start_main () from /lib/libc-2.6.so
#15 0x0805c6c1 in bind_args () from /bin/bash
(fhpd) down
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
(fhpd) disassemble
Dump of assembler code for function: __read_nocancel
0x76c2ba <__read_nocancel+0>: push %ebx
0x76c2bb <__read_nocancel+1>: mov 0x10(%esp),%edx
0x76c2bf <__read_nocancel+5>: mov 0xc(%esp),%ecx
0x76c2c3 <__read_nocancel+9>: mov 0x8(%esp),%ebx
0x76c2c7 <__read_nocancel+d>: mov $0x3,%eax
0x76c2cc <__read_nocancel+12>: call *%gs:0x10
0x76c2d3 <__read_nocancel+19>: pop %ebx
0x76c2d4 <__read_nocancel+1a>: cmp $0xfffff001,%eax
0x76c2d9 <__read_nocancel+1f>: jae 0x76c30d
0x76c2db <__read_nocancel+21>: ret
End of assembly dump
(fhpd) disassemble 0x76c2c7
Dump of assembler code for function: __read_nocancel
0x76c2ba <__read_nocancel+0>: push %ebx
0x76c2bb <__read_nocancel+1>: mov 0x10(%esp),%edx
0x76c2bf <__read_nocancel+5>: mov 0xc(%esp),%ecx
0x76c2c3 <__read_nocancel+9>: mov 0x8(%esp),%ebx
*0x76c2c7 <__read_nocancel+d>: mov $0x3,%eax
0x76c2cc <__read_nocancel+12>: call *%gs:0x10
0x76c2d3 <__read_nocancel+19>: pop %ebx
0x76c2d4 <__read_nocancel+1a>: cmp $0xfffff001,%eax
0x76c2d9 <__read_nocancel+1f>: jae 0x76c30d
0x76c2db <__read_nocancel+21>: ret
End of assembly dump
(fhpd) up
#0 0x00110402 in __kernel_vsyscall () from [vdso]
(fhpd) disassemble 0x76c2c7
Dump of assembler code for function: __read_nocancel
0x76c2ba <__read_nocancel+0>: push %ebx
0x76c2bb <__read_nocancel+1>: mov 0x10(%esp),%edx
0x76c2bf <__read_nocancel+5>: mov 0xc(%esp),%ecx
0x76c2c3 <__read_nocancel+9>: mov 0x8(%esp),%ebx
*0x76c2c7 <__read_nocancel+d>: mov $0x3,%eax
0x76c2cc <__read_nocancel+12>: call *%gs:0x10
0x76c2d3 <__read_nocancel+19>: pop %ebx
0x76c2d4 <__read_nocancel+1a>: cmp $0xfffff001,%eax
0x76c2d9 <__read_nocancel+1f>: jae 0x76c30d
0x76c2db <__read_nocancel+21>: ret
End of assembly dump
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from [vdso]
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
#3 0x080c3c23 in [unknown] from /bin/bash
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
#5 0x080b3305 in rl_vi_delete () from /bin/bash
#6 0x08065a11 in yyparse () from /bin/bash
#7 0x08060d08 in read_secondary_line () from /bin/bash
#8 0x08062f7a in read_token () from /bin/bash
#9 0x08066121 in get_group_array () from /bin/bash
#10 0x0805ee11 in yyerror () from /bin/bash
#11 0x100bdb5f in [unknown] from Unknown
#12 0x0805eeed in yyerror () from /bin/bash
#13 0x0805d7d0 in main () from /bin/bash
#14 0x006c0f70 in __libc_start_main () from /lib/libc-2.6.so
#15 0x0805c6c1 in bind_args () from /bin/bash
(fhpd) list
No symbol table is available.
(fhpd) down
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
(fhpd) disassemble
Dump of assembler code for function: __read_nocancel
0x76c2ba <__read_nocancel+0>: push %ebx
0x76c2bb <__read_nocancel+1>: mov 0x10(%esp),%edx
0x76c2bf <__read_nocancel+5>: mov 0xc(%esp),%ecx
0x76c2c3 <__read_nocancel+9>: mov 0x8(%esp),%ebx
0x76c2c7 <__read_nocancel+d>: mov $0x3,%eax
0x76c2cc <__read_nocancel+12>: call *%gs:0x10
0x76c2d3 <__read_nocancel+19>: pop %ebx
0x76c2d4 <__read_nocancel+1a>: cmp $0xfffff001,%eax
0x76c2d9 <__read_nocancel+1f>: jae 0x76c30d
0x76c2db <__read_nocancel+21>: ret
End of assembly dump
(fhpd) down
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
(fhpd) disassemble
Dump of assembler code for function: _rl_init_terminal_io
0x80c368b <_rl_init_terminal_io+ab>: pop %ebp
0x80c368c <_rl_init_terminal_io+ac>: ret
0x80c368d <_rl_init_terminal_io+ad>: mov %esi,(%esp)
0x80c3690 <_rl_init_terminal_io+b0>: call 0x805ba6c
0x80c3695 <_rl_init_terminal_io+b5>: mov %eax,(%esp)
0x80c3698 <_rl_init_terminal_io+b8>: call 0x8067700
0x80c369d <_rl_init_terminal_io+bd>: test %eax,%eax
0x80c369f <_rl_init_terminal_io+bf>: jns 0x80c3647
0x80c36a1 <_rl_init_terminal_io+c1>: jmp 0x80c3681
*0x80c36a3 <_rl_init_terminal_io+c3>: lea 0x0(%esi),%esi
0x80c36a9 <_rl_init_terminal_io+c9>: lea 0x0(%edi),%edi
0x80c36b0 <_rl_init_terminal_io+d0>: push %ebp
0x80c36b1 <_rl_init_terminal_io+d1>: mov %esp,%ebp
0x80c36b3 <_rl_init_terminal_io+d3>: sub $0x138,%esp
0x80c36b9 <_rl_init_terminal_io+d9>: mov 0x80fcd10,%eax
0x80c36be <_rl_init_terminal_io+de>: mov %ebx,0xfffffff4(%ebp)
0x80c36c1 <_rl_init_terminal_io+e1>: lea 0xffffff6c(%ebp),%ebx
0x80c36c7 <_rl_init_terminal_io+e7>: mov %edi,0xfffffffc(%ebp)
0x80c36ca <_rl_init_terminal_io+ea>: mov %ebx,%edi
0x80c36cc <_rl_init_terminal_io+ec>: mov %esi,0xfffffff8(%ebp)
End of assembly dump
(fhpd) disassemble -t
Dump of assembler code for function: _rl_init_terminal_io
0x80c35e0 <_rl_init_terminal_io+0>: push %ebp
0x80c35e1 <_rl_init_terminal_io+1>: mov %esp,%ebp
0x80c35e3 <_rl_init_terminal_io+3>: mov 0x8(%ebp),%eax
0x80c35e6 <_rl_init_terminal_io+6>: orl $0x20000,0x80fcd08
0x80c35f0 <_rl_init_terminal_io+10>: pop %ebp
0x80c35f1 <_rl_init_terminal_io+11>: mov %eax,0x80fcd34
0x80c35f6 <_rl_init_terminal_io+16>: xor %eax,%eax
0x80c35f8 <_rl_init_terminal_io+18>: ret
0x80c35f9 <_rl_init_terminal_io+19>: lea 0x0(%esi),%esi
0x80c3600 <_rl_init_terminal_io+20>: push %ebp
0x80c3601 <_rl_init_terminal_io+21>: xor %eax,%eax
0x80c3603 <_rl_init_terminal_io+23>: andl $0xfffdffff,0x80fcd08
0x80c360d <_rl_init_terminal_io+2d>: mov %esp,%ebp
0x80c360f <_rl_init_terminal_io+2f>: pop %ebp
0x80c3610 <_rl_init_terminal_io+30>: movl $0x0,0x80fcd34
0x80c361a <_rl_init_terminal_io+3a>: ret
0x80c361b <_rl_init_terminal_io+3b>: nop
0x80c361c <_rl_init_terminal_io+3c>: lea 0x0(%esi),%esi
0x80c3620 <_rl_init_terminal_io+40>: push %ebp
0x80c3621 <_rl_init_terminal_io+41>: mov %esp,%ebp
0x80c3623 <_rl_init_terminal_io+43>: push %esi
0x80c3624 <_rl_init_terminal_io+44>: push %ebx
0x80c3625 <_rl_init_terminal_io+45>: sub $0x20,%esp
0x80c3628 <_rl_init_terminal_io+48>: mov 0x8(%ebp),%esi
0x80c362b <_rl_init_terminal_io+4b>: lea 0xfffffff7(%ebp),%ebx
0x80c362e <_rl_init_terminal_io+4e>: jmp 0x80c3647
0x80c3630 <_rl_init_terminal_io+50>: test %eax,%eax
0x80c3632 <_rl_init_terminal_io+52>: je 0x80c3681
0x80c3634 <_rl_init_terminal_io+54>: call 0x805ba9c
0x80c3639 <_rl_init_terminal_io+59>: mov (%eax),%eax
0x80c363b <_rl_init_terminal_io+5b>: cmp $0xb,%eax
0x80c363e <_rl_init_terminal_io+5e>: xchg %ax,%ax
0x80c3640 <_rl_init_terminal_io+60>: je 0x80c368d
0x80c3642 <_rl_init_terminal_io+62>: cmp $0x4,%eax
0x80c3645 <_rl_init_terminal_io+65>: jne 0x80c3673
0x80c3647 <_rl_init_terminal_io+67>: mov %esi,(%esp)
0x80c364a <_rl_init_terminal_io+6a>: call 0x805ba6c
0x80c364f <_rl_init_terminal_io+6f>: movl $0x1,0x8(%esp)
0x80c3657 <_rl_init_terminal_io+77>: mov %ebx,0x4(%esp)
0x80c365b <_rl_init_terminal_io+7b>: mov %eax,(%esp)
0x80c365e <_rl_init_terminal_io+7e>: call 0x805bd9c
0x80c3663 <_rl_init_terminal_io+83>: cmp $0x1,%eax
0x80c3666 <_rl_init_terminal_io+86>: jne 0x80c3630
0x80c3668 <_rl_init_terminal_io+88>: movzbl 0xfffffff7(%ebp),%eax
0x80c366c <_rl_init_terminal_io+8c>: add $0x20,%esp
0x80c366f <_rl_init_terminal_io+8f>: pop %ebx
0x80c3670 <_rl_init_terminal_io+90>: pop %esi
0x80c3671 <_rl_init_terminal_io+91>: pop %ebp
0x80c3672 <_rl_init_terminal_io+92>: ret
0x80c3673 <_rl_init_terminal_io+93>: testb $0x8,0x80fcd08
0x80c367a <_rl_init_terminal_io+9a>: mov $0xfffffffe,%eax
0x80c367f <_rl_init_terminal_io+9f>: jne 0x80c3686
0x80c3681 <_rl_init_terminal_io+a1>: mov $0xffffffff,%eax
0x80c3686 <_rl_init_terminal_io+a6>: add $0x20,%esp
0x80c3689 <_rl_init_terminal_io+a9>: pop %ebx
0x80c368a <_rl_init_terminal_io+aa>: pop %esi
0x80c368b <_rl_init_terminal_io+ab>: pop %ebp
0x80c368c <_rl_init_terminal_io+ac>: ret
0x80c368d <_rl_init_terminal_io+ad>: mov %esi,(%esp)
0x80c3690 <_rl_init_terminal_io+b0>: call 0x805ba6c
0x80c3695 <_rl_init_terminal_io+b5>: mov %eax,(%esp)
0x80c3698 <_rl_init_terminal_io+b8>: call 0x8067700
0x80c369d <_rl_init_terminal_io+bd>: test %eax,%eax
0x80c369f <_rl_init_terminal_io+bf>: jns 0x80c3647
0x80c36a1 <_rl_init_terminal_io+c1>: jmp 0x80c3681
*0x80c36a3 <_rl_init_terminal_io+c3>: lea 0x0(%esi),%esi
0x80c36a9 <_rl_init_terminal_io+c9>: lea 0x0(%edi),%edi
0x80c36b0 <_rl_init_terminal_io+d0>: push %ebp
0x80c36b1 <_rl_init_terminal_io+d1>: mov %esp,%ebp
0x80c36b3 <_rl_init_terminal_io+d3>: sub $0x138,%esp
0x80c36b9 <_rl_init_terminal_io+d9>: mov 0x80fcd10,%eax
0x80c36be <_rl_init_terminal_io+de>: mov %ebx,0xfffffff4(%ebp)
0x80c36c1 <_rl_init_terminal_io+e1>: lea 0xffffff6c(%ebp),%ebx
0x80c36c7 <_rl_init_terminal_io+e7>: mov %edi,0xfffffffc(%ebp)
0x80c36ca <_rl_init_terminal_io+ea>: mov %ebx,%edi
0x80c36cc <_rl_init_terminal_io+ec>: mov %esi,0xfffffff8(%ebp)
0x80c36cf <_rl_init_terminal_io+ef>: mov %eax,(%esp)
0x80c36d2 <_rl_init_terminal_io+f2>: call 0x805ba6c
0x80c36d7 <_rl_init_terminal_io+f7>: xor %edx,%edx
0x80c36d9 <_rl_init_terminal_io+f9>: mov $0x20,%ecx
0x80c36de <_rl_init_terminal_io+fe>: mov %eax,0xfffffee0(%ebp)
0x80c36e4 <_rl_init_terminal_io+104>: mov %edx,%eax
0x80c36e6 <_rl_init_terminal_io+106>: cld
0x80c36e7 <_rl_init_terminal_io+107>: rep stos %eax,%es:(%edi)
0x80c36e9 <_rl_init_terminal_io+109>: lea 0xfffffeec(%ebp),%esi
0x80c36ef <_rl_init_terminal_io+10f>: mov $0x20,%ecx
0x80c36f4 <_rl_init_terminal_io+114>: mov %esi,%edi
0x80c36f6 <_rl_init_terminal_io+116>: cld
0x80c36f7 <_rl_init_terminal_io+117>: rep stos %eax,%es:(%edi)
0x80c36f9 <_rl_init_terminal_io+119>: mov 0xfffffee0(%ebp),%ecx
0x80c36ff <_rl_init_terminal_io+11f>: mov 0xfffffee0(%ebp),%edx
0x80c3705 <_rl_init_terminal_io+125>: shr $0x5,%ecx
0x80c3708 <_rl_init_terminal_io+128>: and $0x1f,%edx
0x80c370b <_rl_init_terminal_io+12b>: bts %edx,0xffffff6c(%ebp,%ecx,4)
0x80c3713 <_rl_init_terminal_io+133>: bts %edx,0xfffffeec(%ebp,%ecx,4)
0x80c371b <_rl_init_terminal_io+13b>: mov 0x80f9558,%edx
0x80c3721 <_rl_init_terminal_io+141>: mov 0xfffffee0(%ebp),%eax
0x80c3727 <_rl_init_terminal_io+147>: mov %esi,0xc(%esp)
0x80c372b <_rl_init_terminal_io+14b>: mov %ebx,0x4(%esp)
0x80c372f <_rl_init_terminal_io+14f>: mov %edx,0xfffffff0(%ebp)
0x80c3732 <_rl_init_terminal_io+152>: lea 0xffffffec(%ebp),%edx
0x80c3735 <_rl_init_terminal_io+155>: add $0x1,%eax
0x80c3738 <_rl_init_terminal_io+158>: movl $0x0,0xffffffec(%ebp)
0x80c373f <_rl_init_terminal_io+15f>: mov %edx,0x10(%esp)
0x80c3743 <_rl_init_terminal_io+163>: movl $0x0,0x8(%esp)
0x80c374b <_rl_init_terminal_io+16b>: mov %eax,(%esp)
0x80c374e <_rl_init_terminal_io+16e>: call 0x805c1dc
0x80c3753 <_rl_init_terminal_io+173>: mov 0xfffffff4(%ebp),%ebx
0x80c3756 <_rl_init_terminal_io+176>: mov 0xfffffff8(%ebp),%esi
0x80c3759 <_rl_init_terminal_io+179>: mov 0xfffffffc(%ebp),%edi
0x80c375c <_rl_init_terminal_io+17c>: test %eax,%eax
0x80c375e <_rl_init_terminal_io+17e>: setg %al
0x80c3761 <_rl_init_terminal_io+181>: mov %ebp,%esp
0x80c3763 <_rl_init_terminal_io+183>: pop %ebp
0x80c3764 <_rl_init_terminal_io+184>: movzbl %al,%eax
0x80c3767 <_rl_init_terminal_io+187>: ret
0x80c3768 <_rl_init_terminal_io+188>: nop
0x80c3769 <_rl_init_terminal_io+189>: lea 0x0(%esi),%esi
0x80c3770 <_rl_init_terminal_io+190>: push %ebp
0x80c3771 <_rl_init_terminal_io+191>: mov %esp,%ebp
0x80c3773 <_rl_init_terminal_io+193>: sub $0x18,%esp
0x80c3776 <_rl_init_terminal_io+196>: mov 0x8(%ebp),%eax
0x80c3779 <_rl_init_terminal_io+199>: mov %ebx,0xfffffff8(%ebp)
0x80c377c <_rl_init_terminal_io+19c>: mov %esi,0xfffffffc(%ebp)
0x80c377f <_rl_init_terminal_io+19f>: mov %eax,(%esp)
0x80c3782 <_rl_init_terminal_io+1a2>: call 0x80c3550
0x80c3787 <_rl_init_terminal_io+1a7>: mov %eax,%ebx
0x80c3789 <_rl_init_terminal_io+1a9>: call 0x80c36b0
0x80c378e <_rl_init_terminal_io+1ae>: mov %ebx,(%esp)
0x80c3791 <_rl_init_terminal_io+1b1>: mov %eax,%esi
0x80c3793 <_rl_init_terminal_io+1b3>: call 0x80c3550
0x80c3798 <_rl_init_terminal_io+1b8>: mov %esi,%eax
0x80c379a <_rl_init_terminal_io+1ba>: mov 0xfffffff8(%ebp),%ebx
0x80c379d <_rl_init_terminal_io+1bd>: mov 0xfffffffc(%ebp),%esi
0x80c37a0 <_rl_init_terminal_io+1c0>: mov %ebp,%esp
0x80c37a2 <_rl_init_terminal_io+1c2>: pop %ebp
0x80c37a3 <_rl_init_terminal_io+1c3>: ret
0x80c37a4 <_rl_init_terminal_io+1c4>: lea 0x0(%esi),%esi
0x80c37aa <_rl_init_terminal_io+1ca>: lea 0x0(%edi),%edi
0x80c37b0 <_rl_init_terminal_io+1d0>: push %ebp
0x80c37b1 <_rl_init_terminal_io+1d1>: mov %esp,%ebp
0x80c37b3 <_rl_init_terminal_io+1d3>: push %edi
0x80c37b4 <_rl_init_terminal_io+1d4>: push %esi
0x80c37b5 <_rl_init_terminal_io+1d5>: push %ebx
0x80c37b6 <_rl_init_terminal_io+1d6>: sub $0x13c,%esp
0x80c37bc <_rl_init_terminal_io+1dc>: mov 0x80fcd34,%eax
0x80c37c1 <_rl_init_terminal_io+1e1>: addl $0x1,0x80fcd28
0x80c37c8 <_rl_init_terminal_io+1e8>: test %eax,%eax
0x80c37ca <_rl_init_terminal_io+1ea>: je 0x80c37e2
0x80c37cc <_rl_init_terminal_io+1ec>: mov %eax,0xffffffec(%ebp)
0x80c37cf <_rl_init_terminal_io+1ef>: call 0x80c3600
0x80c37d4 <_rl_init_terminal_io+1f4>: mov 0xffffffec(%ebp),%eax
0x80c37d7 <_rl_init_terminal_io+1f7>: add $0x13c,%esp
0x80c37dd <_rl_init_terminal_io+1fd>: pop %ebx
0x80c37de <_rl_init_terminal_io+1fe>: pop %esi
0x80c37df <_rl_init_terminal_io+1ff>: pop %edi
0x80c37e0 <_rl_init_terminal_io+200>: pop %ebp
0x80c37e1 <_rl_init_terminal_io+201>: ret
0x80c37e2 <_rl_init_terminal_io+202>: call 0x80c3360
0x80c37e7 <_rl_init_terminal_io+207>: test %eax,%eax
0x80c37e9 <_rl_init_terminal_io+209>: jne 0x80c37d7
0x80c37eb <_rl_init_terminal_io+20b>: mov 0x80fd960,%ebx
0x80c37f1 <_rl_init_terminal_io+211>: movl $0x0,0xffffffec(%ebp)
0x80c37f8 <_rl_init_terminal_io+218>: test %ebx,%ebx
0x80c37fa <_rl_init_terminal_io+21a>: je 0x80c3a35
0x80c3800 <_rl_init_terminal_io+220>: lea 0xffffffec(%ebp),%eax
0x80c3803 <_rl_init_terminal_io+223>: call 0x80c34a0
0x80c3808 <_rl_init_terminal_io+228>: test %eax,%eax
0x80c380a <_rl_init_terminal_io+22a>: mov %eax,%esi
0x80c380c <_rl_init_terminal_io+22c>: jne 0x80c37d4
0x80c380e <_rl_init_terminal_io+22e>: call *0x80fd960
0x80c3814 <_rl_init_terminal_io+234>: mov 0x80fe764,%ecx
0x80c381a <_rl_init_terminal_io+23a>: test %ecx,%ecx
0x80c381c <_rl_init_terminal_io+23c>: jne 0x80c3a2b
0x80c3822 <_rl_init_terminal_io+242>: mov 0x80fcd10,%eax
0x80c3827 <_rl_init_terminal_io+247>: lea 0xffffff60(%ebp),%ebx
0x80c382d <_rl_init_terminal_io+24d>: movl $0x0,0xffffffe8(%ebp)
0x80c3834 <_rl_init_terminal_io+254>: mov %ebx,%edi
0x80c3836 <_rl_init_terminal_io+256>: mov %eax,(%esp)
0x80c3839 <_rl_init_terminal_io+259>: call 0x805ba6c
0x80c383e <_rl_init_terminal_io+25e>: mov $0x20,%ecx
0x80c3843 <_rl_init_terminal_io+263>: mov %eax,0xfffffed0(%ebp)
0x80c3849 <_rl_init_terminal_io+269>: mov %esi,%eax
0x80c384b <_rl_init_terminal_io+26b>: cld
0x80c384c <_rl_init_terminal_io+26c>: rep stos %eax,%es:(%edi)
0x80c384e <_rl_init_terminal_io+26e>: lea 0xfffffee0(%ebp),%edi
0x80c3854 <_rl_init_terminal_io+274>: mov $0x20,%ecx
0x80c3859 <_rl_init_terminal_io+279>: mov %edi,0xfffffecc(%ebp)
0x80c385f <_rl_init_terminal_io+27f>: cld
0x80c3860 <_rl_init_terminal_io+280>: rep stos %eax,%es:(%edi)
0x80c3862 <_rl_init_terminal_io+282>: mov 0xfffffed0(%ebp),%edx
0x80c3868 <_rl_init_terminal_io+288>: mov 0xfffffed0(%ebp),%eax
0x80c386e <_rl_init_terminal_io+28e>: shr $0x5,%edx
0x80c3871 <_rl_init_terminal_io+291>: and $0x1f,%eax
0x80c3874 <_rl_init_terminal_io+294>: bts %eax,0xffffff60(%ebp,%edx,4)
0x80c387c <_rl_init_terminal_io+29c>: bts %eax,0xfffffee0(%ebp,%edx,4)
0x80c3884 <_rl_init_terminal_io+2a4>: mov 0x80f9558,%eax
0x80c3889 <_rl_init_terminal_io+2a9>: movl $0x0,0xffffffe0(%ebp)
0x80c3890 <_rl_init_terminal_io+2b0>: movl $0x0,0x8(%esp)
0x80c3898 <_rl_init_terminal_io+2b8>: mov %ebx,0x4(%esp)
0x80c389c <_rl_init_terminal_io+2bc>: mov %eax,0xffffffe4(%ebp)
0x80c389f <_rl_init_terminal_io+2bf>: lea 0xffffffe0(%ebp),%eax
0x80c38a2 <_rl_init_terminal_io+2c2>: mov %eax,0x10(%esp)
0x80c38a6 <_rl_init_terminal_io+2c6>: lea 0xfffffee0(%ebp),%eax
0x80c38ac <_rl_init_terminal_io+2cc>: mov %eax,0xc(%esp)
0x80c38b0 <_rl_init_terminal_io+2d0>: mov 0xfffffed0(%ebp),%eax
0x80c38b6 <_rl_init_terminal_io+2d6>: add $0x1,%eax
0x80c38b9 <_rl_init_terminal_io+2d9>: mov %eax,(%esp)
0x80c38bc <_rl_init_terminal_io+2dc>: call 0x805c1dc
0x80c38c1 <_rl_init_terminal_io+2e1>: test %eax,%eax
0x80c38c3 <_rl_init_terminal_io+2e3>: jle 0x80c3957
0x80c38c9 <_rl_init_terminal_io+2e9>: call 0x805ba9c
0x80c38ce <_rl_init_terminal_io+2ee>: mov 0xfffffed0(%ebp),%ecx
0x80c38d4 <_rl_init_terminal_io+2f4>: movl $0x0,(%eax)
0x80c38da <_rl_init_terminal_io+2fa>: mov %eax,%ebx
0x80c38dc <_rl_init_terminal_io+2fc>: lea 0xffffffe8(%ebp),%eax
0x80c38df <_rl_init_terminal_io+2ff>: mov %eax,0x8(%esp)
0x80c38e3 <_rl_init_terminal_io+303>: movl $0x541b,0x4(%esp)
0x80c38eb <_rl_init_terminal_io+30b>: mov %ecx,(%esp)
0x80c38ee <_rl_init_terminal_io+30e>: call 0x805bf0c
0x80c38f3 <_rl_init_terminal_io+313>: cmp $0xffffffff,%eax
0x80c38f6 <_rl_init_terminal_io+316>: mov %eax,%esi
0x80c38f8 <_rl_init_terminal_io+318>: je 0x80c3970
0x80c38fa <_rl_init_terminal_io+31a>: mov 0xffffffe8(%ebp),%ebx
0x80c38fd <_rl_init_terminal_io+31d>: test %ebx,%ebx
0x80c38ff <_rl_init_terminal_io+31f>: jle 0x80c3957
0x80c3901 <_rl_init_terminal_io+321>: call 0x80c3470
0x80c3906 <_rl_init_terminal_io+326>: cmp %eax,%ebx
0x80c3908 <_rl_init_terminal_io+328>: jle 0x80c390d
0x80c390a <_rl_init_terminal_io+32a>: mov %eax,0xffffffe8(%ebp)
0x80c390d <_rl_init_terminal_io+32d>: cmp $0x1fe,%eax
0x80c3912 <_rl_init_terminal_io+332>: setle %al
0x80c3915 <_rl_init_terminal_io+335>: movzbl %al,%eax
0x80c3918 <_rl_init_terminal_io+338>: sub $0x1,%eax
0x80c391b <_rl_init_terminal_io+33b>: and %eax,0xffffffe8(%ebp)
0x80c391e <_rl_init_terminal_io+33e>: add $0x1,%esi
0x80c3921 <_rl_init_terminal_io+341>: je 0x80c3a05
0x80c3927 <_rl_init_terminal_io+347>: mov 0xffffffe8(%ebp),%eax
0x80c392a <_rl_init_terminal_io+34a>: sub $0x1,%eax
0x80c392d <_rl_init_terminal_io+34d>: mov %eax,0xffffffe8(%ebp)
0x80c3930 <_rl_init_terminal_io+350>: add $0x1,%eax
0x80c3933 <_rl_init_terminal_io+353>: je 0x80c3957
0x80c3935 <_rl_init_terminal_io+355>: mov 0x80fcd10,%eax
0x80c393a <_rl_init_terminal_io+35a>: mov %eax,(%esp)
0x80c393d <_rl_init_terminal_io+35d>: call *0x80f9554
0x80c3943 <_rl_init_terminal_io+363>: mov %eax,%ebx
0x80c3945 <_rl_init_terminal_io+365>: mov %eax,(%esp)
0x80c3948 <_rl_init_terminal_io+368>: call 0x80c3570
0x80c394d <_rl_init_terminal_io+36d>: cmp $0xa,%ebx
0x80c3950 <_rl_init_terminal_io+370>: je 0x80c3957
0x80c3952 <_rl_init_terminal_io+372>: cmp $0xd,%ebx
0x80c3955 <_rl_init_terminal_io+375>: jne 0x80c3927
0x80c3957 <_rl_init_terminal_io+377>: mov 0x80fd960,%eax
0x80c395c <_rl_init_terminal_io+37c>: test %eax,%eax
0x80c395e <_rl_init_terminal_io+37e>: jne 0x80c3800
0x80c3964 <_rl_init_terminal_io+384>: jmp 0x80c37d4
0x80c3969 <_rl_init_terminal_io+389>: lea 0x0(%esi),%esi
0x80c3970 <_rl_init_terminal_io+390>: cmpl $0x5,(%ebx)
0x80c3973 <_rl_init_terminal_io+393>: je 0x80c3a21
0x80c3979 <_rl_init_terminal_io+399>: mov 0xfffffed0(%ebp),%edi
0x80c397f <_rl_init_terminal_io+39f>: movl $0x0,0x8(%esp)
0x80c3987 <_rl_init_terminal_io+3a7>: movl $0x3,0x4(%esp)
0x80c398f <_rl_init_terminal_io+3af>: mov %edi,(%esp)
0x80c3992 <_rl_init_terminal_io+3b2>: call 0x805c46c
0x80c3997 <_rl_init_terminal_io+3b7>: movl $0x4,0x4(%esp)
0x80c399f <_rl_init_terminal_io+3bf>: mov %edi,(%esp)
0x80c39a2 <_rl_init_terminal_io+3c2>: mov %eax,%ebx
0x80c39a4 <_rl_init_terminal_io+3c4>: or $0x8,%ah
0x80c39a7 <_rl_init_terminal_io+3c7>: mov %eax,0x8(%esp)
0x80c39ab <_rl_init_terminal_io+3cb>: call 0x805c46c
0x80c39b0 <_rl_init_terminal_io+3d0>: lea 0xfffffff3(%ebp),%eax
0x80c39b3 <_rl_init_terminal_io+3d3>: movl $0x1,0x8(%esp)
0x80c39bb <_rl_init_terminal_io+3db>: mov %eax,0x4(%esp)
0x80c39bf <_rl_init_terminal_io+3df>: mov %edi,(%esp)
0x80c39c2 <_rl_init_terminal_io+3e2>: call 0x805bd9c
0x80c39c7 <_rl_init_terminal_io+3e7>: mov %ebx,0x8(%esp)
0x80c39cb <_rl_init_terminal_io+3eb>: movl $0x4,0x4(%esp)
0x80c39d3 <_rl_init_terminal_io+3f3>: mov %edi,(%esp)
0x80c39d6 <_rl_init_terminal_io+3f6>: mov %eax,0xffffffe8(%ebp)
0x80c39d9 <_rl_init_terminal_io+3f9>: call 0x805c46c
0x80c39de <_rl_init_terminal_io+3fe>: mov 0xffffffe8(%ebp),%ebx
0x80c39e1 <_rl_init_terminal_io+401>: cmp $0xffffffff,%ebx
0x80c39e4 <_rl_init_terminal_io+404>: je 0x80c3957
0x80c39ea <_rl_init_terminal_io+40a>: test %ebx,%ebx
0x80c39ec <_rl_init_terminal_io+40c>: jne 0x80c38fd
0x80c39f2 <_rl_init_terminal_io+412>: movl $0xffffffff,(%esp)
0x80c39f9 <_rl_init_terminal_io+419>: call 0x80c3570
0x80c39fe <_rl_init_terminal_io+41e>: xchg %ax,%ax
0x80c3a00 <_rl_init_terminal_io+420>: jmp 0x80c3957
0x80c3a05 <_rl_init_terminal_io+425>: mov 0xffffffe8(%ebp),%edx
0x80c3a08 <_rl_init_terminal_io+428>: test %edx,%edx
0x80c3a0a <_rl_init_terminal_io+42a>: je 0x80c3957
0x80c3a10 <_rl_init_terminal_io+430>: movsbl 0xfffffff3(%ebp),%eax
0x80c3a14 <_rl_init_terminal_io+434>: mov %eax,(%esp)
0x80c3a17 <_rl_init_terminal_io+437>: call 0x80c3570
0x80c3a1c <_rl_init_terminal_io+43c>: jmp 0x80c3957
0x80c3a21 <_rl_init_terminal_io+441>: movl $0x1,0x80fe764
0x80c3a2b <_rl_init_terminal_io+44b>: mov $0xa,%eax
0x80c3a30 <_rl_init_terminal_io+450>: jmp 0x80c37d7
0x80c3a35 <_rl_init_terminal_io+455>: lea 0xffffffec(%ebp),%eax
0x80c3a38 <_rl_init_terminal_io+458>: call 0x80c34a0
0x80c3a3d <_rl_init_terminal_io+45d>: test %eax,%eax
0x80c3a3f <_rl_init_terminal_io+45f>: jne 0x80c37d4
0x80c3a45 <_rl_init_terminal_io+465>: mov 0x80fcd10,%eax
0x80c3a4a <_rl_init_terminal_io+46a>: mov %eax,(%esp)
0x80c3a4d <_rl_init_terminal_io+46d>: call *0x80f9554
0x80c3a53 <_rl_init_terminal_io+473>: mov %eax,0xffffffec(%ebp)
0x80c3a56 <_rl_init_terminal_io+476>: jmp 0x80c37d4
0x80c3a5b <_rl_init_terminal_io+47b>: nop
End of assembly dump
(fhpd) list
No symbol table is available.
(fhpd) disassemble
Dump of assembler code for function: _rl_init_terminal_io
0x80c368b <_rl_init_terminal_io+ab>: pop %ebp
0x80c368c <_rl_init_terminal_io+ac>: ret
0x80c368d <_rl_init_terminal_io+ad>: mov %esi,(%esp)
0x80c3690 <_rl_init_terminal_io+b0>: call 0x805ba6c
0x80c3695 <_rl_init_terminal_io+b5>: mov %eax,(%esp)
0x80c3698 <_rl_init_terminal_io+b8>: call 0x8067700
0x80c369d <_rl_init_terminal_io+bd>: test %eax,%eax
0x80c369f <_rl_init_terminal_io+bf>: jns 0x80c3647
0x80c36a1 <_rl_init_terminal_io+c1>: jmp 0x80c3681
*0x80c36a3 <_rl_init_terminal_io+c3>: lea 0x0(%esi),%esi
0x80c36a9 <_rl_init_terminal_io+c9>: lea 0x0(%edi),%edi
0x80c36b0 <_rl_init_terminal_io+d0>: push %ebp
0x80c36b1 <_rl_init_terminal_io+d1>: mov %esp,%ebp
0x80c36b3 <_rl_init_terminal_io+d3>: sub $0x138,%esp
0x80c36b9 <_rl_init_terminal_io+d9>: mov 0x80fcd10,%eax
0x80c36be <_rl_init_terminal_io+de>: mov %ebx,0xfffffff4(%ebp)
0x80c36c1 <_rl_init_terminal_io+e1>: lea 0xffffff6c(%ebp),%ebx
0x80c36c7 <_rl_init_terminal_io+e7>: mov %edi,0xfffffffc(%ebp)
0x80c36ca <_rl_init_terminal_io+ea>: mov %ebx,%edi
0x80c36cc <_rl_init_terminal_io+ec>: mov %esi,0xfffffff8(%ebp)
End of assembly dump
(fhpd) quit
Quitting...
----------------------------------------------------------------------------
[... now show that you can create a core file from a running
process and then use that core file with fhpd ...]
----------------------------------------------------------------------------
$ ./frysk-core/frysk/bindir/fcore 2072
$ ./frysk-core/frysk/bindir/fhpd core.2072
Attached to core file: /home/mark/src/frysk-obj/core.2072
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from
#1 0x0076c2c9 in __read_nocancel () from /lib/libc.so.6
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
#3 0x080c3c23 in [unknown] from /bin/bash
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
#5 0x080b3305 in rl_vi_delete () from /bin/bash
#6 0x08065a11 in yyparse () from /bin/bash
#7 0x08060d08 in read_secondary_line () from /bin/bash
#8 0x08062f7a in read_token () from /bin/bash
#9 0x08066121 in get_group_array () from /bin/bash
#10 0x0805ee11 in yyerror () from /bin/bash
#11 0x100bdb5f in [unknown] from Unknown
#12 0x0805eeed in yyerror () from /bin/bash
#13 0x0805d7d0 in main () from /bin/bash
#14 0x006c0f70 in __libc_start_main () from /lib/libc.so.6
#15 0x0805c6c1 in bind_args () from /bin/bash
(fhpd) down
#1 0x0076c2c9 in __read_nocancel () from /lib/libc.so.6
(fhpd) dissassmeble
Error: Unrecognized command: dissassmeble.
(fhpd) disassemble
Dump of assembler code for function: __read_nocancel
0x76c2ba <__read_nocancel+0>: push %ebx
0x76c2bb <__read_nocancel+1>: mov 0x10(%esp),%edx
0x76c2bf <__read_nocancel+5>: mov 0xc(%esp),%ecx
0x76c2c3 <__read_nocancel+9>: mov 0x8(%esp),%ebx
0x76c2c7 <__read_nocancel+d>: mov $0x3,%eax
0x76c2cc <__read_nocancel+12>: call *%gs:0x10
0x76c2d3 <__read_nocancel+19>: pop %ebx
0x76c2d4 <__read_nocancel+1a>: cmp $0xfffff001,%eax
0x76c2d9 <__read_nocancel+1f>: jae 0x76c30d
0x76c2db <__read_nocancel+21>: ret
End of assembly dump
(fhpd) regs
eax: -512
ebx: 0
ecx: -1075342433
edx: 1
esi: 156801632
edi: 156801632
ebp: -1075342424
eip: 7783123
eflags: 2097734
esp: -1075342472
(fhpd) down
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
(fhpd) disassemble
Dump of assembler code for function: _rl_init_terminal_io
0x80c368b <_rl_init_terminal_io+ab>: pop %ebp
0x80c368c <_rl_init_terminal_io+ac>: ret
0x80c368d <_rl_init_terminal_io+ad>: mov %esi,(%esp)
0x80c3690 <_rl_init_terminal_io+b0>: call 0x805ba6c
0x80c3695 <_rl_init_terminal_io+b5>: mov %eax,(%esp)
0x80c3698 <_rl_init_terminal_io+b8>: call 0x8067700
0x80c369d <_rl_init_terminal_io+bd>: test %eax,%eax
0x80c369f <_rl_init_terminal_io+bf>: jns 0x80c3647
0x80c36a1 <_rl_init_terminal_io+c1>: jmp 0x80c3681
*0x80c36a3 <_rl_init_terminal_io+c3>: lea 0x0(%esi),%esi
0x80c36a9 <_rl_init_terminal_io+c9>: lea 0x0(%edi),%edi
0x80c36b0 <_rl_init_terminal_io+d0>: push %ebp
0x80c36b1 <_rl_init_terminal_io+d1>: mov %esp,%ebp
0x80c36b3 <_rl_init_terminal_io+d3>: sub $0x138,%esp
0x80c36b9 <_rl_init_terminal_io+d9>: mov 0x80fcd10,%eax
0x80c36be <_rl_init_terminal_io+de>: mov %ebx,0xfffffff4(%ebp)
0x80c36c1 <_rl_init_terminal_io+e1>: lea 0xffffff6c(%ebp),%ebx
0x80c36c7 <_rl_init_terminal_io+e7>: mov %edi,0xfffffffc(%ebp)
0x80c36ca <_rl_init_terminal_io+ea>: mov %ebx,%edi
0x80c36cc <_rl_init_terminal_io+ec>: mov %esi,0xfffffff8(%ebp)
End of assembly dump
(fhpd) list
No symbol table is available.
(fhpd) down
#3 0x080c3c23 in [unknown] from /bin/bash
(fhpd) down
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
(fhpd) disassemble
Dump of assembler code for function: rl_vi_char_search
0x80b2f9a <rl_vi_char_search+ba>: je 0x80b2ff1
0x80b2f9c <rl_vi_char_search+bc>: cmp $0xffffffff,%edx
0x80b2f9f <rl_vi_char_search+bf>: nop
0x80b2fa0 <rl_vi_char_search+c0>: je 0x80b2ff9
0x80b2fa2 <rl_vi_char_search+c2>: mov 0x80f6c24,%eax
0x80b2fa7 <rl_vi_char_search+c7>: mov %edx,0x80fcd64
0x80b2fad <rl_vi_char_search+cd>: mov %eax,0x4(%esp)
0x80b2fb1 <rl_vi_char_search+d1>: movzbl %dl,%eax
0x80b2fb4 <rl_vi_char_search+d4>: mov %eax,(%esp)
*0x80b2fb7 <rl_vi_char_search+d7>: call 0x80b2c80
0x80b2fbc <rl_vi_char_search+dc>: mov 0x80fcd34,%edx
0x80b2fc2 <rl_vi_char_search+e2>: test %edx,%edx
0x80b2fc4 <rl_vi_char_search+e4>: je 0x80b2fd0
0x80b2fc6 <rl_vi_char_search+e6>: call 0x80b2e60
0x80b2fcb <rl_vi_char_search+eb>: xor %eax,%eax
0x80b2fcd <rl_vi_char_search+ed>: leave
0x80b2fce <rl_vi_char_search+ee>: ret
0x80b2fcf <rl_vi_char_search+ef>: nop
0x80b2fd0 <rl_vi_char_search+f0>: mov 0xfffffffc(%ebp),%eax
0x80b2fd3 <rl_vi_char_search+f3>: cmp 0x80fcd00,%eax
End of assembly dump
(fhpd) disassemble -t
Dump of assembler code for function: rl_vi_char_search
0x80b2ee0 <rl_vi_char_search+0>: add %al,(%eax)
0x80b2ee2 <rl_vi_char_search+2>: movl $0xa,0x4(%esp)
0x80b2eea <rl_vi_char_search+a>: movl $0x1,(%esp)
0x80b2ef1 <rl_vi_char_search+11>: call 0x80c5860
0x80b2ef6 <rl_vi_char_search+16>: jmp 0x80b2e90
0x80b2ef8 <rl_vi_char_search+18>: mov 0x80fe780,%eax
0x80b2efd <rl_vi_char_search+1d>: test %eax,%eax
0x80b2eff <rl_vi_char_search+1f>: jne 0x80b2eb7
0x80b2f01 <rl_vi_char_search+21>: mov 0x80fe784,%eax
0x80b2f06 <rl_vi_char_search+26>: test %eax,%eax
0x80b2f08 <rl_vi_char_search+28>: jne 0x80b2eb7
0x80b2f0a <rl_vi_char_search+2a>: leave
0x80b2f0b <rl_vi_char_search+2b>: jmp 0x80bdce0
0x80b2f10 <rl_vi_char_search+30>: call 0x80b3c00
0x80b2f15 <rl_vi_char_search+35>: jmp 0x80b2e7f
0x80b2f1a <rl_vi_char_search+3a>: lea 0x0(%esi),%esi
0x80b2f20 <rl_vi_char_search+40>: push %ebp
0x80b2f21 <rl_vi_char_search+41>: mov %esp,%ebp
0x80b2f23 <rl_vi_char_search+43>: sub $0x18,%esp
0x80b2f26 <rl_vi_char_search+46>: mov 0x80fcd00,%eax
0x80b2f2b <rl_vi_char_search+4b>: movl $0xffffffff,0x80fcd64
0x80b2f35 <rl_vi_char_search+55>: movl $0x0,0x80fcd60
0x80b2f3f <rl_vi_char_search+5f>: mov %eax,0xfffffffc(%ebp)
0x80b2f42 <rl_vi_char_search+62>: movl $0x1,0x4(%esp)
0x80b2f4a <rl_vi_char_search+6a>: movl $0x80fe6c0,(%esp)
0x80b2f51 <rl_vi_char_search+71>: call 0x805c61c
0x80b2f56 <rl_vi_char_search+76>: test %eax,%eax
0x80b2f58 <rl_vi_char_search+78>: jne 0x80b3020
0x80b2f5e <rl_vi_char_search+7e>: mov 0x80fcd34,%eax
0x80b2f63 <rl_vi_char_search+83>: test %eax,%eax
0x80b2f65 <rl_vi_char_search+85>: je 0x80b3048
0x80b2f6b <rl_vi_char_search+8b>: orl $0x8,0x80fcd08
0x80b2f72 <rl_vi_char_search+92>: call 0x80c37b0
0x80b2f77 <rl_vi_char_search+97>: mov %eax,%edx
0x80b2f79 <rl_vi_char_search+99>: mov 0x80fcd08,%eax
0x80b2f7e <rl_vi_char_search+9e>: and $0xfffffff7,%eax
0x80b2f81 <rl_vi_char_search+a1>: cmp $0xfffffffe,%edx
0x80b2f84 <rl_vi_char_search+a4>: mov %eax,0x80fcd08
0x80b2f89 <rl_vi_char_search+a9>: je 0x80b3003
0x80b2f8b <rl_vi_char_search+ab>: cmp $0xffffffff,%edx
0x80b2f8e <rl_vi_char_search+ae>: je 0x80b3060
0x80b2f94 <rl_vi_char_search+b4>: cmp 0x80f6c38,%edx
0x80b2f9a <rl_vi_char_search+ba>: je 0x80b2ff1
0x80b2f9c <rl_vi_char_search+bc>: cmp $0xffffffff,%edx
0x80b2f9f <rl_vi_char_search+bf>: nop
0x80b2fa0 <rl_vi_char_search+c0>: je 0x80b2ff9
0x80b2fa2 <rl_vi_char_search+c2>: mov 0x80f6c24,%eax
0x80b2fa7 <rl_vi_char_search+c7>: mov %edx,0x80fcd64
0x80b2fad <rl_vi_char_search+cd>: mov %eax,0x4(%esp)
0x80b2fb1 <rl_vi_char_search+d1>: movzbl %dl,%eax
0x80b2fb4 <rl_vi_char_search+d4>: mov %eax,(%esp)
*0x80b2fb7 <rl_vi_char_search+d7>: call 0x80b2c80
0x80b2fbc <rl_vi_char_search+dc>: mov 0x80fcd34,%edx
0x80b2fc2 <rl_vi_char_search+e2>: test %edx,%edx
0x80b2fc4 <rl_vi_char_search+e4>: je 0x80b2fd0
0x80b2fc6 <rl_vi_char_search+e6>: call 0x80b2e60
0x80b2fcb <rl_vi_char_search+eb>: xor %eax,%eax
0x80b2fcd <rl_vi_char_search+ed>: leave
0x80b2fce <rl_vi_char_search+ee>: ret
0x80b2fcf <rl_vi_char_search+ef>: nop
0x80b2fd0 <rl_vi_char_search+f0>: mov 0xfffffffc(%ebp),%eax
0x80b2fd3 <rl_vi_char_search+f3>: cmp 0x80fcd00,%eax
0x80b2fd9 <rl_vi_char_search+f9>: sete %al
0x80b2fdc <rl_vi_char_search+fc>: movzbl %al,%eax
0x80b2fdf <rl_vi_char_search+ff>: sub $0x1,%eax
0x80b2fe2 <rl_vi_char_search+102>: and %eax,0x80fcd00
0x80b2fe8 <rl_vi_char_search+108>: call 0x80b2e60
0x80b2fed <rl_vi_char_search+10d>: xor %eax,%eax
0x80b2fef <rl_vi_char_search+10f>: jmp 0x80b2fcd
0x80b2ff1 <rl_vi_char_search+111>: cmp 0x80fcd64,%edx
0x80b2ff7 <rl_vi_char_search+117>: je 0x80b2f9c
0x80b2ff9 <rl_vi_char_search+119>: mov 0x80fe784,%ecx
0x80b2fff <rl_vi_char_search+11f>: test %ecx,%ecx
0x80b3001 <rl_vi_char_search+121>: jne 0x80b2fa2
0x80b3003 <rl_vi_char_search+123>: or $0x800000,%eax
0x80b3008 <rl_vi_char_search+128>: mov %eax,0x80fcd08
0x80b300d <rl_vi_char_search+12d>: mov $0x1,%eax
0x80b3012 <rl_vi_char_search+132>: movl $0x1,0x80fe764
0x80b301c <rl_vi_char_search+13c>: leave
0x80b301d <rl_vi_char_search+13d>: ret
0x80b301e <rl_vi_char_search+13e>: xchg %ax,%ax
0x80b3020 <rl_vi_char_search+140>: call *0x80f953c
0x80b3026 <rl_vi_char_search+146>: xor %eax,%eax
0x80b3028 <rl_vi_char_search+148>: testb $0x8,0x80fcd0a
0x80b302f <rl_vi_char_search+14f>: movl $0x0,0x80fd1c8
End of assembly dump
(fhpd) disassemble -help
disassemble [OPTIONS] [startAddress] ||
disassemble [-OPTIONS] <startAddress> <endAddress>
disassemble Options:
-i, -instructions-only only print the instruction portion not the
parameters
-t, -no-truncate don't truncate the number of instructions printed
-s, -no-symbol don't print the symbol name
Standard Options:
-help print this help
disassemble the function surrounding the current pc, the function surrounding a given address, or a range of functions.
(fhpd) regs
eax: -512
ebx: 0
ecx: -1075342433
edx: 1
esi: 1
edi: 156801632
ebp: -1075342056
eip: 134950775
eflags: 2097734
esp: -1075342080
(fhpd) print
Usage: print expression [-name] [-index] [-format d|o|x]
(fhpd) print 134950775 -format x
0x80b2f77
(fhpd) disassemble 0x80b2f77
Dump of assembler code for function: rl_vi_char_search
0x80b2f4a <rl_vi_char_search+6a>: movl $0x80fe6c0,(%esp)
0x80b2f51 <rl_vi_char_search+71>: call 0x805c61c
0x80b2f56 <rl_vi_char_search+76>: test %eax,%eax
0x80b2f58 <rl_vi_char_search+78>: jne 0x80b3020
0x80b2f5e <rl_vi_char_search+7e>: mov 0x80fcd34,%eax
0x80b2f63 <rl_vi_char_search+83>: test %eax,%eax
0x80b2f65 <rl_vi_char_search+85>: je 0x80b3048
0x80b2f6b <rl_vi_char_search+8b>: orl $0x8,0x80fcd08
0x80b2f72 <rl_vi_char_search+92>: call 0x80c37b0
*0x80b2f77 <rl_vi_char_search+97>: mov %eax,%edx
0x80b2f79 <rl_vi_char_search+99>: mov 0x80fcd08,%eax
0x80b2f7e <rl_vi_char_search+9e>: and $0xfffffff7,%eax
0x80b2f81 <rl_vi_char_search+a1>: cmp $0xfffffffe,%edx
0x80b2f84 <rl_vi_char_search+a4>: mov %eax,0x80fcd08
0x80b2f89 <rl_vi_char_search+a9>: je 0x80b3003
0x80b2f8b <rl_vi_char_search+ab>: cmp $0xffffffff,%edx
0x80b2f8e <rl_vi_char_search+ae>: je 0x80b3060
0x80b2f94 <rl_vi_char_search+b4>: cmp 0x80f6c38,%edx
0x80b2f9a <rl_vi_char_search+ba>: je 0x80b2ff1
0x80b2f9c <rl_vi_char_search+bc>: cmp $0xffffffff,%edx
End of assembly dump
(fhpd) disassemble 134950775
Dump of assembler code for function: rl_vi_char_search
0x80b2f4a <rl_vi_char_search+6a>: movl $0x80fe6c0,(%esp)
0x80b2f51 <rl_vi_char_search+71>: call 0x805c61c
0x80b2f56 <rl_vi_char_search+76>: test %eax,%eax
0x80b2f58 <rl_vi_char_search+78>: jne 0x80b3020
0x80b2f5e <rl_vi_char_search+7e>: mov 0x80fcd34,%eax
0x80b2f63 <rl_vi_char_search+83>: test %eax,%eax
0x80b2f65 <rl_vi_char_search+85>: je 0x80b3048
0x80b2f6b <rl_vi_char_search+8b>: orl $0x8,0x80fcd08
0x80b2f72 <rl_vi_char_search+92>: call 0x80c37b0
*0x80b2f77 <rl_vi_char_search+97>: mov %eax,%edx
0x80b2f79 <rl_vi_char_search+99>: mov 0x80fcd08,%eax
0x80b2f7e <rl_vi_char_search+9e>: and $0xfffffff7,%eax
0x80b2f81 <rl_vi_char_search+a1>: cmp $0xfffffffe,%edx
0x80b2f84 <rl_vi_char_search+a4>: mov %eax,0x80fcd08
0x80b2f89 <rl_vi_char_search+a9>: je 0x80b3003
0x80b2f8b <rl_vi_char_search+ab>: cmp $0xffffffff,%edx
0x80b2f8e <rl_vi_char_search+ae>: je 0x80b3060
0x80b2f94 <rl_vi_char_search+b4>: cmp 0x80f6c38,%edx
0x80b2f9a <rl_vi_char_search+ba>: je 0x80b2ff1
0x80b2f9c <rl_vi_char_search+bc>: cmp $0xffffffff,%edx
End of assembly dump
(fhpd) disassemble main
java.lang.NullPointerException
at frysk.debuginfo.DebugInfoEvaluator.getDie(fhpd)
at frysk.debuginfo.DebugInfoEvaluator.get(fhpd)
at frysk.expr.CppTreeParser.expr(fhpd)
at frysk.expr.CppTreeParser.expr(fhpd)
at frysk.debuginfo.DebugInfo.print(fhpd)
at frysk.hpd.CLI.parseValue(fhpd)
at frysk.hpd.DisassembleCommand.handle(fhpd)
at frysk.hpd.CLI.execCommand(fhpd)
at frysk.bindir.fhpd.main(fhpd)
Internal debugger error:
(fhpd) print main
java.lang.NullPointerException
at frysk.debuginfo.DebugInfoEvaluator.getDie(fhpd)
at frysk.debuginfo.DebugInfoEvaluator.get(fhpd)
at frysk.expr.CppTreeParser.expr(fhpd)
at frysk.expr.CppTreeParser.expr(fhpd)
at frysk.debuginfo.DebugInfo.print(fhpd)
at frysk.hpd.CLI.parseValue(fhpd)
at frysk.hpd.PrintCommand.handle(fhpd)
at frysk.hpd.CLI.execCommand(fhpd)
at frysk.bindir.fhpd.main(fhpd)
Internal debugger error:
(fhpd) what main
Error: main not found in scope.
(fhpd) detach
(fhpd) attach 2072
Attached to process 2072
(fhpd) what main
Error: No symbol table is available.
(fhpd) quit
Quitting...
[mark@hermans frysk-obj]$ ./frysk-core/frysk/bindir/fhpd 2072
Attached to process 2072
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from [vdso]
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
#3 0x080c3c23 in [unknown] from /bin/bash
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
#5 0x080b3305 in rl_vi_delete () from /bin/bash
#6 0x08065a11 in yyparse () from /bin/bash
#7 0x08060d08 in read_secondary_line () from /bin/bash
#8 0x08062f7a in read_token () from /bin/bash
#9 0x08066121 in get_group_array () from /bin/bash
#10 0x0805ee11 in yyerror () from /bin/bash
#11 0x100bdb5f in [unknown] from Unknown
#12 0x0805eeed in yyerror () from /bin/bash
#13 0x0805d7d0 in main () from /bin/bash
#14 0x006c0f70 in __libc_start_main () from /lib/libc-2.6.so
#15 0x0805c6c1 in bind_args () from /bin/bash
(fhpd) what main
Error: No symbol table is available.
(fhpd) print main
Error: Variable main not found in scope
(fhpd) down
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
(fhpd) down
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
(fhpd) down
#3 0x080c3c23 in [unknown] from /bin/bash
(fhpd) down
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
(fhpd) down
#5 0x080b3305 in rl_vi_delete () from /bin/bash
(fhpd) down -help
Usage: down [num-levels]
(fhpd) down 8
#13 0x0805d7d0 in main () from /bin/bash
(fhpd) print main
Aborted
[mark@hermans frysk-obj]$ ./frysk-core/frysk/bindir/fhpd 2072
Attached to process 2072
(fhpd) where
#0 0x00110402 in __kernel_vsyscall () from [vdso]
#1 0x0076c2c9 in __read_nocancel () from /lib/libc-2.6.so
#2 0x080c36a3 in _rl_init_terminal_io () from /bin/bash
#3 0x080c3c23 in [unknown] from /bin/bash
#4 0x080b2fb7 in rl_vi_char_search () from /bin/bash
#5 0x080b3305 in rl_vi_delete () from /bin/bash
#6 0x08065a11 in yyparse () from /bin/bash
#7 0x08060d08 in read_secondary_line () from /bin/bash
#8 0x08062f7a in read_token () from /bin/bash
#9 0x08066121 in get_group_array () from /bin/bash
#10 0x0805ee11 in yyerror () from /bin/bash
#11 0x100bdb5f in [unknown] from Unknown
#12 0x0805eeed in yyerror () from /bin/bash
#13 0x0805d7d0 in main () from /bin/bash
#14 0x006c0f70 in __libc_start_main () from /lib/libc-2.6.so
#15 0x0805c6c1 in bind_args () from /bin/bash
(fhpd) disassemble 0x80c36a3
Dump of assembler code for function: _rl_init_terminal_io
0x80c368b <_rl_init_terminal_io+ab>: pop %ebp
0x80c368c <_rl_init_terminal_io+ac>: ret
0x80c368d <_rl_init_terminal_io+ad>: mov %esi,(%esp)
0x80c3690 <_rl_init_terminal_io+b0>: call 0x805ba6c
0x80c3695 <_rl_init_terminal_io+b5>: mov %eax,(%esp)
0x80c3698 <_rl_init_terminal_io+b8>: call 0x8067700
0x80c369d <_rl_init_terminal_io+bd>: test %eax,%eax
0x80c369f <_rl_init_terminal_io+bf>: jns 0x80c3647
0x80c36a1 <_rl_init_terminal_io+c1>: jmp 0x80c3681
*0x80c36a3 <_rl_init_terminal_io+c3>: lea 0x0(%esi),%esi
0x80c36a9 <_rl_init_terminal_io+c9>: lea 0x0(%edi),%edi
0x80c36b0 <_rl_init_terminal_io+d0>: push %ebp
0x80c36b1 <_rl_init_terminal_io+d1>: mov %esp,%ebp
0x80c36b3 <_rl_init_terminal_io+d3>: sub $0x138,%esp
0x80c36b9 <_rl_init_terminal_io+d9>: mov 0x80fcd10,%eax
0x80c36be <_rl_init_terminal_io+de>: mov %ebx,0xfffffff4(%ebp)
0x80c36c1 <_rl_init_terminal_io+e1>: lea 0xffffff6c(%ebp),%ebx
0x80c36c7 <_rl_init_terminal_io+e7>: mov %edi,0xfffffffc(%ebp)
0x80c36ca <_rl_init_terminal_io+ea>: mov %ebx,%edi
0x80c36cc <_rl_init_terminal_io+ec>: mov %esi,0xfffffff8(%ebp)
End of assembly dump
(fhpd) disassemble -help
disassemble [OPTIONS] [startAddress] ||
disassemble [-OPTIONS] <startAddress> <endAddress>
disassemble Options:
-i, -instructions-only only print the instruction portion not the
parameters
-t, -no-truncate don't truncate the number of instructions printed
-s, -no-symbol don't print the symbol name
Standard Options:
-help print this help
disassemble the function surrounding the current pc, the function surrounding a given address, or a range of functions.
(fhpd) help disassemble
disassemble [OPTIONS] [startAddress] ||
disassemble [-OPTIONS] <startAddress> <endAddress>
disassemble the function surrounding the current pc, the function surrounding a given address, or a range of functions.
(fhpd) quit
Quitting...
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2007-08-06 15:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-08-06 15:07 frysk meeting 2007-08-01 demo typescript Mark Wielaard
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).