* Thread signal information @ 2002-07-24 8:58 Lucy Zhang 2002-07-24 9:04 ` Daniel Jacobowitz 0 siblings, 1 reply; 10+ messages in thread From: Lucy Zhang @ 2002-07-24 8:58 UTC (permalink / raw) To: gdb Hi, I'm constructing an ELF core dump (conversion from a different formatted dump). I'm trying to add thread information by using a prstatus struct for each thread. I was wondering what should I put for the signal information for each thread. Do I even need this info for threads other than the faulting thread? Thanks, Lucy ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 8:58 Thread signal information Lucy Zhang @ 2002-07-24 9:04 ` Daniel Jacobowitz 2002-07-24 9:47 ` Dan Kegel 0 siblings, 1 reply; 10+ messages in thread From: Daniel Jacobowitz @ 2002-07-24 9:04 UTC (permalink / raw) To: Lucy Zhang; +Cc: gdb On Wed, Jul 24, 2002 at 09:00:43AM -0700, Lucy Zhang wrote: > Hi, > > I'm constructing an ELF core dump (conversion from a different formatted > dump). I'm trying to add thread information by using a prstatus struct for > each thread. I was wondering what should I put for the signal information > for each thread. Do I even need this info for threads other than the > faulting thread? Not really. I believe that GDB only recognizes the signal in the first listed thread (or it may have been the last listed thread.... there was a fix in this area recently, I believe). First listed (faulting) certainly makes the most sense, and GDB definitely only cares about one thread. -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 9:04 ` Daniel Jacobowitz @ 2002-07-24 9:47 ` Dan Kegel 2002-07-24 11:52 ` Andrew Cagney 2002-07-24 11:57 ` Daniel Jacobowitz 0 siblings, 2 replies; 10+ messages in thread From: Dan Kegel @ 2002-07-24 9:47 UTC (permalink / raw) To: Daniel Jacobowitz; +Cc: Lucy Zhang, gdb Daniel Jacobowitz wrote: > On Wed, Jul 24, 2002 at 09:00:43AM -0700, Lucy Zhang wrote: >>I'm constructing an ELF core dump (conversion from a different formatted >>dump). I'm trying to add thread information by using a prstatus struct for >>each thread. I was wondering what should I put for the signal information >>for each thread. Do I even need this info for threads other than the >>faulting thread? > > Not really. I believe that GDB only recognizes the signal in the first > listed thread (or it may have been the last listed thread.... there was > a fix in this area recently, I believe). First listed (faulting) > certainly makes the most sense, and GDB definitely only cares about one > thread. Does one give up anything by doing a postmortem gdb session rather than a live session? Obviously one loses the ability to continue, but what else? Presumably (once we coax the OS into producing the proper core dump) we still can do 'info threads' and 'backtrace' on each thread, right? (I haven't used core dumps for a long, long time. Very recently, though, I used a signal handler to do just-in-time startup of gdbserver to help debug a program running on a 100 node cluster. If my nodes had hard disks, I'd be more likely to use coredumps :-) - Dan ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 9:47 ` Dan Kegel @ 2002-07-24 11:52 ` Andrew Cagney 2002-07-24 11:57 ` Daniel Jacobowitz 1 sibling, 0 replies; 10+ messages in thread From: Andrew Cagney @ 2002-07-24 11:52 UTC (permalink / raw) To: Dan Kegel; +Cc: Daniel Jacobowitz, Lucy Zhang, gdb > Does one give up anything by doing a postmortem gdb session > rather than a live session? Obviously one loses the ability to continue, > but what else? Presumably (once we coax the OS into producing the > proper core dump) we still can do 'info threads' and 'backtrace' on > each thread, right? Main thing you loose is inferior function calls. Often they are useful when it comes to displaying data. Andrew ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 9:47 ` Dan Kegel 2002-07-24 11:52 ` Andrew Cagney @ 2002-07-24 11:57 ` Daniel Jacobowitz 2002-07-24 12:11 ` Dan Kegel 1 sibling, 1 reply; 10+ messages in thread From: Daniel Jacobowitz @ 2002-07-24 11:57 UTC (permalink / raw) To: Dan Kegel; +Cc: Lucy Zhang, gdb On Wed, Jul 24, 2002 at 10:28:52AM -0700, Dan Kegel wrote: > Daniel Jacobowitz wrote: > >On Wed, Jul 24, 2002 at 09:00:43AM -0700, Lucy Zhang wrote: > >>I'm constructing an ELF core dump (conversion from a different formatted > >>dump). I'm trying to add thread information by using a prstatus struct for > >>each thread. I was wondering what should I put for the signal information > >>for each thread. Do I even need this info for threads other than the > >>faulting thread? > > > >Not really. I believe that GDB only recognizes the signal in the first > >listed thread (or it may have been the last listed thread.... there was > >a fix in this area recently, I believe). First listed (faulting) > >certainly makes the most sense, and GDB definitely only cares about one > >thread. > > Does one give up anything by doing a postmortem gdb session > rather than a live session? Obviously one loses the ability to continue, > but what else? Presumably (once we coax the OS into producing the > proper core dump) we still can do 'info threads' and 'backtrace' on > each thread, right? > > (I haven't used core dumps for a long, long time. > Very recently, though, I used a signal handler to do just-in-time > startup of gdbserver to help debug a program running on a 100 node > cluster. If my nodes had hard disks, I'd be more likely to use > coredumps :-) From a design perspective, in the corefiles we get each thread's registers from the kernel; in live debugging we use thread_db. Given Linux's one-process-one-thread model at present, this has no practical significance. From a convenience perspective, as Andrew said, you lose inferior function calls. You can't modify memory. Etc. -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 11:57 ` Daniel Jacobowitz @ 2002-07-24 12:11 ` Dan Kegel 2002-07-25 8:57 ` Lucy Zhang 0 siblings, 1 reply; 10+ messages in thread From: Dan Kegel @ 2002-07-24 12:11 UTC (permalink / raw) To: Daniel Jacobowitz; +Cc: Lucy Zhang, gdb Daniel Jacobowitz wrote: >>Does one give up anything by doing a postmortem gdb session >>rather than a live session? > > From a design perspective, in the corefiles we get each thread's > registers from the kernel; in live debugging we use thread_db. > Given Linux's one-process-one-thread model at present, this has no > practical significance. ... but it might if/when people start using NGPT instead of LinuxThreads. I suppose I should check to see what that project plans to do about core dumps. > From a convenience perspective, as Andrew said, you lose inferior > function calls. You can't modify memory. Etc. Thanks! - Dan ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-24 12:11 ` Dan Kegel @ 2002-07-25 8:57 ` Lucy Zhang 2002-07-25 9:18 ` Daniel Jacobowitz 0 siblings, 1 reply; 10+ messages in thread From: Lucy Zhang @ 2002-07-25 8:57 UTC (permalink / raw) To: gdb What are inferior function calls? Lucy ----- Original Message ----- From: "Dan Kegel" <dkegel@ixiacom.com> To: "Daniel Jacobowitz" <drow@mvista.com> Cc: "Lucy Zhang" <lucyz@uclink4.berkeley.edu>; <gdb@sources.redhat.com> Sent: Wednesday, July 24, 2002 12:53 PM Subject: Re: Thread signal information > Daniel Jacobowitz wrote: > >>Does one give up anything by doing a postmortem gdb session > >>rather than a live session? > > > > From a design perspective, in the corefiles we get each thread's > > registers from the kernel; in live debugging we use thread_db. > > Given Linux's one-process-one-thread model at present, this has no > > practical significance. > > ... but it might if/when people start using NGPT instead of LinuxThreads. > I suppose I should check to see what that project plans to do about core dumps. > > > From a convenience perspective, as Andrew said, you lose inferior > > function calls. You can't modify memory. Etc. > > Thanks! > - Dan > > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Thread signal information 2002-07-25 8:57 ` Lucy Zhang @ 2002-07-25 9:18 ` Daniel Jacobowitz 2002-07-25 18:28 ` how does GDB find the symbols? Lucy Zhang 0 siblings, 1 reply; 10+ messages in thread From: Daniel Jacobowitz @ 2002-07-25 9:18 UTC (permalink / raw) To: Lucy Zhang; +Cc: gdb Calling functions in the live program, from the GDB prompt, while debugging it. On Thu, Jul 25, 2002 at 08:59:35AM -0700, Lucy Zhang wrote: > What are inferior function calls? > > Lucy > ----- Original Message ----- > From: "Dan Kegel" <dkegel@ixiacom.com> > To: "Daniel Jacobowitz" <drow@mvista.com> > Cc: "Lucy Zhang" <lucyz@uclink4.berkeley.edu>; <gdb@sources.redhat.com> > Sent: Wednesday, July 24, 2002 12:53 PM > Subject: Re: Thread signal information > > > > Daniel Jacobowitz wrote: > > >>Does one give up anything by doing a postmortem gdb session > > >>rather than a live session? > > > > > > From a design perspective, in the corefiles we get each thread's > > > registers from the kernel; in live debugging we use thread_db. > > > Given Linux's one-process-one-thread model at present, this has no > > > practical significance. > > > > ... but it might if/when people start using NGPT instead of LinuxThreads. > > I suppose I should check to see what that project plans to do about core > dumps. > > > > > From a convenience perspective, as Andrew said, you lose inferior > > > function calls. You can't modify memory. Etc. > > > > Thanks! > > - Dan > > > > > > -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer ^ permalink raw reply [flat|nested] 10+ messages in thread
* how does GDB find the symbols? 2002-07-25 9:18 ` Daniel Jacobowitz @ 2002-07-25 18:28 ` Lucy Zhang 2002-07-26 10:03 ` Jim Blandy 0 siblings, 1 reply; 10+ messages in thread From: Lucy Zhang @ 2002-07-25 18:28 UTC (permalink / raw) To: gdb Hi, I'm converting a coredump into the ELF format. At first, the outputs in GDB came out blank, i.e. #0 0x40091aa5 in ?? () But after I added some other infomation, now I get the symbols filled in. i.e. #0 0x40091aa5 in sigset (sig=-1073747472, disp=0x20) at ../sysdeps/posix/sigset.c:69 Where does GDB find the function names, the arg lists, and other such information? Thanks, Lucy ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: how does GDB find the symbols? 2002-07-25 18:28 ` how does GDB find the symbols? Lucy Zhang @ 2002-07-26 10:03 ` Jim Blandy 0 siblings, 0 replies; 10+ messages in thread From: Jim Blandy @ 2002-07-26 10:03 UTC (permalink / raw) To: Lucy Zhang; +Cc: gdb "Lucy Zhang" <lucyz@uclink4.berkeley.edu> writes: > I'm converting a coredump into the ELF format. At first, the outputs in GDB > came out blank, i.e. > #0 0x40091aa5 in ?? () > > > But after I added some other infomation, now I get the symbols filled in. > i.e. > > #0 0x40091aa5 in sigset (sig=-1073747472, disp=0x20) at > ../sysdeps/posix/sigset.c:69 > > Where does GDB find the function names, the arg lists, and other such > information? From the executable file's debugging info. ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2002-07-26 17:03 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2002-07-24 8:58 Thread signal information Lucy Zhang 2002-07-24 9:04 ` Daniel Jacobowitz 2002-07-24 9:47 ` Dan Kegel 2002-07-24 11:52 ` Andrew Cagney 2002-07-24 11:57 ` Daniel Jacobowitz 2002-07-24 12:11 ` Dan Kegel 2002-07-25 8:57 ` Lucy Zhang 2002-07-25 9:18 ` Daniel Jacobowitz 2002-07-25 18:28 ` how does GDB find the symbols? Lucy Zhang 2002-07-26 10:03 ` Jim Blandy
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox