On Wed, 14 Mar 2012 16:45:49 -0400, Don Clugston <[email protected]> wrote:

On 14/03/12 21:31, Steven Schveighoffer wrote:
On Wed, 14 Mar 2012 16:08:29 -0400, Don Clugston <[email protected]> wrote:

Now, your user space handler will cause another segfault when it does
the mov [ESP], 0. I think that gives you an infinite loop.

SEGFAULT inside a SEGV signal handler aborts the program (no way to turn
this off IIRC).

-Steve

But you're not inside the signal handler when it happens. You returned.

Then how does the signal handler do anything? I mean, doesn't it need a stack? Or does it just affect register variables? Most signal handlers are normal functions, and isn't there some usage of the stack to save registers?

It seems there should be a way to turn off the signal handler during the time when you are suspicous of the stack being the culprit, then re-engage the signal handler before throwing the error.

-Steve

Reply via email to