Re: i386 ABI and the stack
- From: Arjan van de Ven <arjan@xxxxxxxxxxxxx>
- Date: Sat, 24 Jun 2006 13:03:18 +0200
On Fri, 2006-06-23 at 22:43 -0400, Albert Cahalan wrote:
On 6/23/06, Linus Torvalds <torvalds@xxxxxxxx> wrote:
On Fri, 23 Jun 2006, H. Peter Anvin wrote:
The x86-64 ABI has a 128-byte(*) zone that is safe from signals etc, so you
can use a small amount of stack below the stackpointer safely. Not so on
x86.
Adding a small redzone like this to i386 would be easy, though -- just drop
the stack pointer by that much when creating a signal frame. 128 bytes isn't
enough to interfere with libraries.
However, any binaries created with that in mind would be
buggy-by-definition on older kernels, so I don't think it's worth it.
Since gcc-2.96 would access 256 bytes below the stack pointer
(according to the valgrind man page), the kernel needs to allow
for this in signal handlers anyway.
only a handful buggy editions of that compiler did in a few corner
cases. And they were really buggy, and they were corner cases. Nobody
should be using a compiler like that; and nobody is expected to compile
software with a broken version of that compiler (iirc the window in
which it was broken was really small). There is a limit to userspace
brokenness that the kernel should work around. This imo is on the other
side of the line.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- References:
- i386 ABI and the stack
- From: Albert Cahalan
- Re: i386 ABI and the stack
- From: Linus Torvalds
- Re: i386 ABI and the stack
- From: H. Peter Anvin
- Re: i386 ABI and the stack
- From: Linus Torvalds
- Re: i386 ABI and the stack
- From: Albert Cahalan
- i386 ABI and the stack
- Prev by Date: Re: [PATCH] riport LADAR driver
- Next by Date: Re: [PATCH] fcache: a remapping boot cache
- Previous by thread: Re: i386 ABI and the stack
- Next by thread: Re: [linux-pm] swsusp regression [Was: 2.6.17-mm1]
- Index(es):
Relevant Pages
|
|