* Re: Add FIXME comment re stack overflow and modules
@ 2015-12-21 15:49 Eli Zaretskii
2015-12-21 17:40 ` Paul Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2015-12-21 15:49 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
+/* FIXME: The following implementation for non-local exit handling
+ does not work with stack overflow detection. */
By "does not work" here, did you mean that using MODULE_FUNCTION_BEGIN
will fail to catch the jump out of the SIGSEGV handler? If so, I
suggest to clarify that, as "don't work" might be interpreted in other
ways.
Thanks.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Add FIXME comment re stack overflow and modules
2015-12-21 15:49 Add FIXME comment re stack overflow and modules Eli Zaretskii
@ 2015-12-21 17:40 ` Paul Eggert
2015-12-21 18:10 ` Eli Zaretskii
0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggert @ 2015-12-21 17:40 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii wrote:
> By "does not work" here, did you mean that using MODULE_FUNCTION_BEGIN
> will fail to catch the jump out of the SIGSEGV handler?
I did not analyze emacs-module.h and emacs-module.c carefully enough to find the
exact problem areas. Now that you mention it, I imagine the problem you mention
can occur, but I expect that there are other problems as well. For example, the
module code contains comments like "It is very important that pushing the
handler doesn't itself raise a signal" that suggest that the corresponding code
is incompatible with stack overflow checking.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Add FIXME comment re stack overflow and modules
2015-12-21 17:40 ` Paul Eggert
@ 2015-12-21 18:10 ` Eli Zaretskii
2015-12-21 18:29 ` Paul Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2015-12-21 18:10 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
> Cc: emacs-devel@gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Mon, 21 Dec 2015 09:40:26 -0800
>
> Eli Zaretskii wrote:
> > By "does not work" here, did you mean that using MODULE_FUNCTION_BEGIN
> > will fail to catch the jump out of the SIGSEGV handler?
>
> I did not analyze emacs-module.h and emacs-module.c carefully enough to find the
> exact problem areas.
IMO, it hardly makes sense to have comments that add confusion rather
than explain clearly the issues. I clarified that comment a bit.
> For example, the module code contains comments like "It is very
> important that pushing the handler doesn't itself raise a signal"
> that suggest that the corresponding code is incompatible with stack
> overflow checking.
I think it refers to Fsignal, not to signals caught by sigaction
handlers.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Add FIXME comment re stack overflow and modules
2015-12-21 18:10 ` Eli Zaretskii
@ 2015-12-21 18:29 ` Paul Eggert
2015-12-21 19:01 ` Eli Zaretskii
0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggert @ 2015-12-21 18:29 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii wrote:
> I clarified that comment a bit.
Thanks.
>> >For example, the module code contains comments like "It is very
>> >important that pushing the handler doesn't itself raise a signal"
>> >that suggest that the corresponding code is incompatible with stack
>> >overflow checking.
> I think it refers to Fsignal, not to signals caught by sigaction
> handlers.
Yes. And this suggests that that part of the implementation is incompatible with
stack overflow checking.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Add FIXME comment re stack overflow and modules
2015-12-21 18:29 ` Paul Eggert
@ 2015-12-21 19:01 ` Eli Zaretskii
0 siblings, 0 replies; 5+ messages in thread
From: Eli Zaretskii @ 2015-12-21 19:01 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
> Cc: emacs-devel@gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Mon, 21 Dec 2015 10:29:59 -0800
>
> >> >For example, the module code contains comments like "It is very
> >> >important that pushing the handler doesn't itself raise a signal"
> >> >that suggest that the corresponding code is incompatible with stack
> >> >overflow checking.
> > I think it refers to Fsignal, not to signals caught by sigaction
> > handlers.
>
> Yes. And this suggests that that part of the implementation is incompatible with
> stack overflow checking.
It's compatible. It just doesn't catch that like it catches longjmp
from C.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-12-21 19:01 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-21 15:49 Add FIXME comment re stack overflow and modules Eli Zaretskii
2015-12-21 17:40 ` Paul Eggert
2015-12-21 18:10 ` Eli Zaretskii
2015-12-21 18:29 ` Paul Eggert
2015-12-21 19:01 ` Eli Zaretskii
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.