Re: [patch] align signal-frame even when not using alternate signal-stack

From: David Mosberger-Tang <David.Mosberger_at_acm.org>
Date: 2005-11-04 05:20:41
On 11/2/05, Keith Owens <kaos@sgi.com> wrote:
> On Wed, 2 Nov 2005 22:40:19 -0800 (PST),
> davidm@mail.mostang.com (David Mosberger-Tang) wrote:
> >At the moment, attempting to invoke a signal-handler on the normal
> >stack is guaranteed to fail if the stack-pointer happens not to be
> >16-byte aligned.
>
> Itanium Software Conventions and Runtime Architecture Guide, section
> 7.1 says that the stack pointer must always be aligned on a 16 byte
> boundary.  What software is not using 16 byte alignment for the stack?

Buggy software...

This really is more a "ease debugging" kind of thing.  Clearly you're
in a heap of trouble once your stack-pointer is misaligned, but with
the old behavior, that was aggravated by triggering an infinite series
of nested signals, which makes it quite hard to just stop the process
(plus it may eat lots of memory if the stack limit is large).

On top of that, I don't think it makes a lot of sense to force 16-byte
alignment for delivery on alternate signal-stacks and not do so for
the normal stack.  I don't have access to the very earliest ia64-linux
patches anymore (prior to 2000, when things went public), but I'm
pretty sure this was a historical accident.

Thanks,

  --david
--
Mosberger Consulting LLC, voice/fax: 510-744-9372,
http://www.mosberger-consulting.com/
35706 Runckel Lane, Fremont, CA 94536
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Fri Nov 04 05:21:15 2005

This archive was generated by hypermail 2.1.8 : 2005-11-04 05:21:22 EST