From: "Peter.Schauer" <Peter.Schauer@regent.e-technik.tu-muenchen.de>
To: nickc@cambridge.redhat.com (Nick Clifton)
Cc: ac131313@cygnus.com, binutils@sources.redhat.com,
gdb@sources.redhat.com, Chabane.Rezzik@usa.alcatel.com,
gnu-gdb-bug@gnu.org
Subject: Re: [Fwd: [Fwd: Caught signal 9 in core file ????]]
Date: Thu, 08 Nov 2001 14:53:00 -0000 [thread overview]
Message-ID: <200111192141.WAA14933@reisser.regent.e-technik.tu-muenchen.de> (raw)
In-Reply-To: <m3adxww98v.fsf@north-pole.nickc.cambridge.redhat.com>; from "Nick Clifton" at Nov 9, 101 11:43 am
> I can see why you would want to preserve the signal, but shouldn't you
> also preserve the PID (and any other core related data) as well ? In
> fact isn't this really a multithreading problem, with a single BFD
> structure being used to represent multiple (potential) thread cores ?
It wouldn't matter for Solaris (and as I said, using the first note section
for the signal in the currently running thread is a Solaris convention, which
might not be true on other platforms), as prstat.pr_pid is the same for all
threads.
Using per thread signal/pid descriptions would gain nothing on Solaris, as
the pid is all the same and the signal in all not currently running threads
is SIGKILL. I suspect that something similar will happen on other platforms
as well though.
> Hi Andrew,
>
> > Something that has been kicking around the GDB list but is really a
> > BFD problem. Anyone want to grab this and run with it? I don't
> > know enough about core dumps to do the job myself.
>
> Sadly neither do I. The patch however looks wrong to me. With the
> patch applied, the code looks like this:
>
> > offset = offsetof (prstatus_t, pr_reg);
> > memcpy (&prstat, note->descdata, sizeof (prstat));
> >
> > ! if (elf_tdata (abfd)->core_signal == 0)
> > ! elf_tdata (abfd)->core_signal = prstat.pr_cursig;
> > elf_tdata (abfd)->core_pid = prstat.pr_pid;
> >
> > /* pr_who exists on:
>
> So it seem that if core_signal has already been set (from a previous
> thread ?) then it will not be overwritten. But the process ID will be
> changed, so now you have a signal and a PID that do not match...
>
> I can see why you would want to preserve the signal, but shouldn't you
> also preserve the PID (and any other core related data) as well ? In
> fact isn't this really a multithreading problem, with a single BFD
> structure being used to represent multiple (potential) thread cores ?
>
> Cheers
> Nick
--
Peter Schauer pes@regent.e-technik.tu-muenchen.de
next parent reply other threads:[~2001-11-19 21:41 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <m3adxww98v.fsf@north-pole.nickc.cambridge.redhat.com>
2001-11-08 14:53 ` Peter.Schauer [this message]
2001-11-24 10:06 ` Nick Clifton
2001-11-29 2:34 ` Nick Clifton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200111192141.WAA14933@reisser.regent.e-technik.tu-muenchen.de \
--to=peter.schauer@regent.e-technik.tu-muenchen.de \
--cc=Chabane.Rezzik@usa.alcatel.com \
--cc=ac131313@cygnus.com \
--cc=binutils@sources.redhat.com \
--cc=gdb@sources.redhat.com \
--cc=gnu-gdb-bug@gnu.org \
--cc=nickc@cambridge.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox