guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug #33996] 2.0.2: Crash related to ports and threads


From: Andy Wingo
Subject: Re: [bug #33996] 2.0.2: Crash related to ports and threads
Date: Thu, 10 Nov 2011 00:16:38 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

On Sun 21 Aug 2011 15:22, address@hidden (Ludovic Courtès) writes:

> Andy Wingo <address@hidden> skribis:
>
>> Oh dear, this is a nasty one.  The issue is that Guile's ports are not
>> threadsafe.  I hadn't thought about this one...
>>
>> I am adding guile-devel to the Cc for input.  Any fix to this will be
>> pretty big, I think.  I think that the right fix here is probably what
>> Glibc does; see `info libc "Streams and Threads"` for the full details.
>
> Indeed, it would probably need per-port mutexes, making I/O primitives
> thread-safe by default, and perhaps providing unlocked variants like
> libc does.

I did this in master, but something was going wrong so I stubbed it out
for the time being.  But we are almost there.

> Putting our fat mutexes on a diet seems like a prerequisite...

I would think we can use normal mutexes, no?  OTOH making dynamic-wind
and scm_dynwind_* not cons would be really nice.

Andy
-- 
http://wingolog.org/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]