unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* GC asserts and threads
@ 2008-09-09  5:58 Han-Wen Nienhuys
  2008-09-09  7:00 ` Andy Wingo
  0 siblings, 1 reply; 5+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-09  5:58 UTC (permalink / raw)
  To: guile-devel

Hi there,

I'm debugging an issue here that cause the GC asserts to trigger,
with the values compared being off by one.  The problem disappears 
when I compile --without-threads. The program does not explicitly
create threads

Is there any code in GUILE that would create a thread  (possibly 
leading to race conditions) when there is no explicit start-thread
call in the code?  The program (lilypond) does run through the 
regular GUILE boot procedure.

-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





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

* Re: GC asserts and threads
  2008-09-09  5:58 GC asserts and threads Han-Wen Nienhuys
@ 2008-09-09  7:00 ` Andy Wingo
  2008-09-09 13:58   ` Han-Wen Nienhuys
  2008-09-09 14:06   ` Han-Wen Nienhuys
  0 siblings, 2 replies; 5+ messages in thread
From: Andy Wingo @ 2008-09-09  7:00 UTC (permalink / raw)
  To: hanwen; +Cc: guile-devel

On Tue 09 Sep 2008 07:58, Han-Wen Nienhuys <hanwen@xs4all.nl> writes:

> Is there any code in GUILE that would create a thread  (possibly 
> leading to race conditions) when there is no explicit start-thread
> call in the code?  The program (lilypond) does run through the 
> regular GUILE boot procedure.

Yep, when compiled with threads, guile spawns a separate thread to
handle signals.

Andy
-- 
http://wingolog.org/




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

* Re: GC asserts and threads
  2008-09-09  7:00 ` Andy Wingo
@ 2008-09-09 13:58   ` Han-Wen Nienhuys
  2008-09-09 14:53     ` Neil Jerram
  2008-09-09 14:06   ` Han-Wen Nienhuys
  1 sibling, 1 reply; 5+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-09 13:58 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guile-devel

On Tue, Sep 9, 2008 at 4:00 AM, Andy Wingo <wingo@pobox.com> wrote:
> On Tue 09 Sep 2008 07:58, Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
>
>> Is there any code in GUILE that would create a thread  (possibly
>> leading to race conditions) when there is no explicit start-thread
>> call in the code?  The program (lilypond) does run through the
>> regular GUILE boot procedure.
>
> Yep, when compiled with threads, guile spawns a separate thread to
> handle signals.

Where does that happen?

-- 
Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen




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

* Re: GC asserts and threads
  2008-09-09  7:00 ` Andy Wingo
  2008-09-09 13:58   ` Han-Wen Nienhuys
@ 2008-09-09 14:06   ` Han-Wen Nienhuys
  1 sibling, 0 replies; 5+ messages in thread
From: Han-Wen Nienhuys @ 2008-09-09 14:06 UTC (permalink / raw)
  To: guile-devel

Andy Wingo escreveu:
> On Tue 09 Sep 2008 07:58, Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
> 
>> Is there any code in GUILE that would create a thread  (possibly 
>> leading to race conditions) when there is no explicit start-thread
>> call in the code?  The program (lilypond) does run through the 
>> regular GUILE boot procedure.
> 
> Yep, when compiled with threads, guile spawns a separate thread to
> handle signals.
> 

but I am only seeing one....


$ guile
guile> (all-threads)
(#<thread 3086285552 (8208008)>)

> Andy


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen





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

* Re: GC asserts and threads
  2008-09-09 13:58   ` Han-Wen Nienhuys
@ 2008-09-09 14:53     ` Neil Jerram
  0 siblings, 0 replies; 5+ messages in thread
From: Neil Jerram @ 2008-09-09 14:53 UTC (permalink / raw)
  To: hanwen; +Cc: Andy Wingo, guile-devel

2008/9/9 Han-Wen Nienhuys <hanwenn@gmail.com>:
> On Tue, Sep 9, 2008 at 4:00 AM, Andy Wingo <wingo@pobox.com> wrote:
>> On Tue 09 Sep 2008 07:58, Han-Wen Nienhuys <hanwen@xs4all.nl> writes:
>>
>>> Is there any code in GUILE that would create a thread  (possibly
>>> leading to race conditions) when there is no explicit start-thread
>>> call in the code?  The program (lilypond) does run through the
>>> regular GUILE boot procedure.
>>
>> Yep, when compiled with threads, guile spawns a separate thread to
>> handle signals.
>
> Where does that happen?

Look for "ensure_signal_delivery_thread" in scmsigs.c.

   Neil




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

end of thread, other threads:[~2008-09-09 14:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-09  5:58 GC asserts and threads Han-Wen Nienhuys
2008-09-09  7:00 ` Andy Wingo
2008-09-09 13:58   ` Han-Wen Nienhuys
2008-09-09 14:53     ` Neil Jerram
2008-09-09 14:06   ` Han-Wen Nienhuys

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).