all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* 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.