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

Daniel Jacobowitz
2001-12-13T23:57:56Z

On Thu, Dec 13, 2001 at 03:43:15PM -0800, Michael Snyder wrote:
> Good, dumping only the LWPs is the right thing to do, I think.
> But if that's what you're doing, then the thread-db module should
> still be useful to you: I know it is on Solaris, which this one
> was modelled after. You'll need it if-and-when the thread-to-lwp
> mapping ever becomes many-to-one (which may be soon).

See my comments about cross core debugging in my message to Andrew.

> > So there is enough information there for lin-lwp to parse the threads,
> > if we stubbed out its attempts to write, I expect. But since the
> > current Linux threads model has one thread per process, I can simply
> > use the corefile.c thread support instead, which I'd rather do.
>
> You can't rely on that assumption in the future. We need to make
> all these packages work together. It won't be a freebie, it will
> require some work. But as I say, it works for Solaris gdb. We
> just didn't bother making it work for Linux gdb and corefiles,
> because up until now there were no threads in corefiles on Linux.

It will require a large amount of work. For now, threaded core dumps
work with cross debuggers (because thread_db and lin-lwp are not
present at all) but cause internal errors with native debuggers for the
reasons I explained. If there is really such vehement opposition to my
workaround, I'll maintain it as a local patch instead, and leave anyone
else wanting to do this out in the cold. Please don't take that as any
kind of threat; the patch fixes something which is obviously broken,
and I can not justify the time for the significant infrastructure work
necessary for any other solution.

Thread_db, as things stand, does not work on core files. Is preventing
it from trying, and thus crashing GDB, really such a disruptive
suggestion?