Re: [RFA] Don't use thread_db on corefiles

Michael Snyder
2002-01-04T22:49:31Z

Daniel Jacobowitz wrote:
>
> On Thu, Jan 03, 2002 at 05:06:55PM -0800, Michael Snyder wrote:
> > Daniel Jacobowitz wrote:
> > >
> > > This patch fixes a really frustrating internal error when you open the
> > > coredump of a multithreaded application. Depending on your kernel, either
> > > the core has threads (corefile.c supports this just fine) or it doesn't.
> > > Neither way will opening libthread_db work right.
> > >
> > > This patch isn't quite complete, because strange things happen when you
> > > connect to a remote target too. But fixing that requires a little more
> > > fiddling.
> > >
> > > Is this OK?
> >
> > Daniel, sorry for the delay in getting back to you on this.
> > Now that I've had a chance to think about it, I agree that
> > this is the right thing to do. Only I'd like to make it
> > a separate "if" and just goto quit -- since it is not
> > related to the "if" that's in there now. Is that OK
> > with you?
> >
> > If you want you can just check in your patch as is,
> > and I'll make mine as a separate change.
>
> Well, I'mn not sure this is right. It's a reasonable thing to attach
> to a program, debug it live, then attach to a core of the same
> program... at that point we need to go through the unpush_target steps
> in just the same way as if the objfile was discarded, right?

Umm... I had to think about this, but no. You can't debug a corefile
until you kill or detach from the process that you're already debugging.
When you kill or detach, that ought to take care of the unpush.

I think we are going to uncover some problems as we go, which we will
then have to take care of, but for the moment I do believe that this
is the right thing to do.

Michael