This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: mips64 sigaction changes
On Fri, Mar 14, 2003 at 12:34:50PM -0300, Alexandre Oliva wrote:
> On Mar 14, 2003, Daniel Jacobowitz <drow at mvista dot com> wrote:
>
> > Well, I'd rather not. If you follow linux-mips, Ralf has been talking
> > about removing sa_restorer while there are still no uses of it.
>
> My understanding is that he's not doing it for rt signals. Or maybe
> he's just not dropping rt_sigreturn like it seemed like he planned to,
> and getting the kernel to set up the restorer in the stack (which is
> bad, since it involves flushing instruction caches or so). Anyway,
> it's not like we're exporting sa_restorer, we're just using this
> feature like we must to ensure that, if the kernel does require
> sa_restorer, we do the right thing. If it doesn't use sa_restorer,
> it's ok, we'll still work, and then we can drop this field at some
> point.
Er, OK, I think. He was planning on moving the restorer off of the
stack and onto a static kernel page, when I spoke to him. And
eliminating sa_restorer from the sigaction struct entirely.
> >> +/* NOTE: Please think twice before making any changes to the bits of
> >> + code below. GDB needs some intimate knowledge about it to
> >> + recognize them as signal trampolines, and make backtraces through
> >> + signal handlers work right. Important are both the names
> >> + (__restore_rt) and the exact instruction sequence.
> >> + If you ever feel the need to make any changes, please notify the
> >> + appropriate GDB maintainer. */
>
> > This comment's also inappropriate. GDB won't handle __restore or
> > __restore_rt at all.
>
> It should. Otherwise, how can it get a stack trace from within a
> signal handler?
By recognizing the code, not by recognizing the names. Only the i386
GDB port does this to my knowledge.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer