From: John S. <lin...@gm...> - 2005-06-18 16:37:15
|
Hi, I have set up UML kernel 2.6.11 and I can run "linux debug" to step into kernel boot successfully. I 'm trying to trace into a thread , and I 'm following the instruction in http://user-mode-linux.sourceforge.net/debugging.html CTRL+C in gdb xterm # stop (host) ps aux # get the host pid of uml thread # detach from the current thread (UML gdb) det # attach to the thread you are interested in (UML gdb) att <host pid> problem 1: gdb report: " permission denied" # why??? (UML gdb) det (UML gdb) att 1 problem2: gdb report: Attaching to program: /usr/local/bin/linux, process 1 'system-supplied DSO at oxfffe000' has disappeared; keeping its symbols. ... I can not understand what's wrong with these 2 problems. please help me , I have been working on it almost one week. |
From: Blaisorblade <bla...@ya...> - 2005-06-18 16:44:18
|
On Saturday 18 June 2005 18:38, John Smith wrote: > Hi, > I have set up UML kernel 2.6.11 and I can run "linux debug" to step into > kernel boot successfully. > > I 'm trying to trace into a thread , and I 'm following the instruction > in http://user-mode-linux.sourceforge.net/debugging.html > > CTRL+C in gdb xterm # stop > > (host) ps aux # get the host pid of uml thread > > # detach from the current thread > > (UML gdb) det > > # attach to the thread you are interested in > > (UML gdb) att <host pid> > > problem 1: gdb report: " permission denied" # why??? Probably the problem is that you can't trace an already traced thread. The ptrace proxy fixes this but is a bit out of date... IIRC Jeff Dikes works successfully with gdb 5.3.90. > (UML gdb) det > (UML gdb) att 1 > problem2: gdb report: > Attaching to program: /usr/local/bin/linux, process 1 > 'system-supplied DSO at oxfffe000' has disappeared; keeping its symbols. > ... This can probably be ignored, it's about symbols for vsyscalls (the linux-gate.so.1 => (0xffffe000) line in ldd output). > I can not understand what's wrong with these 2 problems. > please help me , I have been working on it almost one week. -- Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894) http://www.user-mode-linux.org/~blaisorblade ___________________________________ Yahoo! Messenger: chiamate gratuite in tutto il mondo http://it.beta.messenger.yahoo.com |
From: john s. <lin...@gm...> - 2005-06-19 04:01:10
|
Hi here is a simple example program . I 'm trying to setp into the kernel proc= ess of this thread. test.c: int main(int argc, char argv[]) { sleep(30); execlp("/bin/ps",NULL); return 0; } (UML) gdb -g -o test test.c (UML) ./test when the test thread is sleeping at "sleep(30);" I prese CTRL+C in (UML gdb) to stop the tracing linux. and trying to attach thread test. (UML gdb) det (UML gdb) att 16488 (host pid of test : linux [./test]) gdb report: Attaching to program: /usr/local/bin/linux, process 16488 ptrace: Operation not permitted this thread is not traced yet, what's the problem? and when I try to attach any other thread except the orignial linux tracing thread, the same problem occurs "ptrace: Operation not permitted" I use gentoo linux system kernel 2.6.11 + GNU gdb 6.3 +=20 usermode-linux 2.6.11.8-bs5 any idea? should I install a old version of gdb 5.3.90 to solve this prob= lem? thanks in advance. On 6/19/05, Blaisorblade <bla...@ya...> wrote: > On Saturday 18 June 2005 18:38, John Smith wrote: > > Hi, > > I have set up UML kernel 2.6.11 and I can run "linux debug" to step int= o > > kernel boot successfully. > > > > I 'm trying to trace into a thread , and I 'm following the instruction > > in http://user-mode-linux.sourceforge.net/debugging.html > > > > CTRL+C in gdb xterm # stop > > > > (host) ps aux # get the host pid of uml thread > > > > # detach from the current thread > > > > (UML gdb) det > > > > # attach to the thread you are interested in > > > > (UML gdb) att <host pid> > > > > problem 1: gdb report: " permission denied" # why??? > Probably the problem is that you can't trace an already traced thread. Th= e > ptrace proxy fixes this but is a bit out of date... IIRC Jeff Dikes works > successfully with gdb 5.3.90. >=20 > > (UML gdb) det > > (UML gdb) att 1 > > problem2: gdb report: > > Attaching to program: /usr/local/bin/linux, process 1 > > 'system-supplied DSO at oxfffe000' has disappeared; keeping its symbols= . > > ... > This can probably be ignored, it's about symbols for vsyscalls (the > linux-gate.so.1 =3D> (0xffffe000) line in ldd output). > > I can not understand what's wrong with these 2 problems. > > please help me , I have been working on it almost one week. >=20 >=20 > -- > Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". > Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 2156218= 94) > http://www.user-mode-linux.org/~blaisorblade |