[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.0903170848490.3082@localhost.localdomain>
Date: Tue, 17 Mar 2009 08:56:34 -0700 (PDT)
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Gábor Melis <mega@...es.hu>
cc: Oleg Nesterov <oleg@...hat.com>,
Davide Libenzi <davidel@...ilserver.org>,
Ingo Molnar <mingo@...e.hu>,
Roland McGrath <roland@...hat.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Chris Friesen <cfriesen@...tel.com>,
linux-kernel@...r.kernel.org
Subject: Re: Q: SEGSEGV && uc_mcontext->ip (Was: Signal delivery order)
On Tue, 17 Mar 2009, Gábor Melis wrote:
>
> As an application developer what I'd like to have is this: synchronously
> generated signals are delivered before asynchronously generated ones.
I agree that it would be nice, but quite frankly, it's simply not how
signals work. It would be a reasonably invasive change, and you wouldn't
really be able to rely on it anyway since most kernels don't work that
way.
What you might be able to do instead is to walk signal frames backwards by
hand. IOW, accept the fact that sometimes signals end up being nested, but
then you could try to find the right frame by just looking at them.
And your trick of comparing 'info->si_ip' with 'context->uc_mcontext->ip'
is pretty good, and lets the code itself walk the signal frames by just
depending on the fault happening again.
Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists