bug-guile
[Top][All Lists]
Advanced

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

Re: [PATCH]: deadlock in make_struct()


From: Linas Vepstas
Subject: Re: [PATCH]: deadlock in make_struct()
Date: Tue, 18 Nov 2008 16:05:37 -0600

2008/11/17 Andy Wingo <address@hidden>:
> Hi Linas,
>
> I was about to write about how your patch looked incorrect to me,
> because GC could see a half-initialized struct (and potentially sweep
> it, with a bad free function);

Well, I tried to think that through. I tried to find a need for a
"remember_up_to_here", but it didn't look like the code
needed it -- it seemed like everything was on stack or
in registers, and so would be safe from accidental GC.

I did not carefully audit all the routines that are called;
there may be problems in there.  Whether there is a
"global variable" lurking somewhere in there was also
unclear.

In general, I notice that "global variables" are not
highlighted in any way in the guile code, thus making it
hard to determine if one is manipulating something
which is completely local to the thread, or is possibly
accessed from multiple threads.   I'm thinking it would
be a wise long-term strategy to provide this kind of
markup, although I don't know how.

--linas




reply via email to

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