unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Code review for thread safeness
@ 2005-03-07 22:04 Marius Vollmer
  2005-03-07 22:36 ` Kevin Ryde
  0 siblings, 1 reply; 8+ messages in thread
From: Marius Vollmer @ 2005-03-07 22:04 UTC (permalink / raw)


Hi,

as far as I am concerned, the last larger thing holding up a Guile 1.8
release is a code review with the aim of making libguile thread safe.

I have replaced all SCM_DEFER_INTS, SCM_ALLOW_INTS calls with
SCM_CRITICAL_SECTION_START/END.  We need to check all occurences
whether they are really used correctly, as explained in the ref
manual.  Basically, there must be no non-local exits between
SCM_CRITICAL_SECTION_START and SCM_CRITICAL_SECTION_END.  If there
might be non-local exits, scm_frame_critical_section can be used
instead.

(Right now, Guile aborts when a non-local exit does in fact happen
between SCM_CRITICAL_SECTION_START and _END.)

Also, there are probably many more places that need to become critical
sections.  We need to find them and use SCM_CRITICAL_SECTION_START/END
or scm_frame_critical_section, as appropriate.

I will release 1.7.2 with a warning that the code review has not been
done yet and then start the review itself.

Any helpers?  Please reply here so that we can coordinate.

-- 
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405


_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2005-12-06 18:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-07 22:04 Code review for thread safeness Marius Vollmer
2005-03-07 22:36 ` Kevin Ryde
2005-03-08  1:18   ` Marius Vollmer
2005-03-08  3:18   ` Ken Raeburn
2005-03-09 14:48     ` Marius Vollmer
2005-03-09 16:23       ` Andreas Rottmann
2005-06-18  5:03         ` Ken Raeburn
2005-12-06 18:58   ` Marius Vollmer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).