[Gc] Re: Re: Fix for crash in GC_dyld_image_add and some more
jimhourihan at earthlink.net
Thu Jul 23 10:36:09 PDT 2009
On Jul 23, 2009, at 10:30 AM, Ivan Maidanski wrote:
> Jim Hourihan <jimhourihan at earthlink.net> wrote:
>> Ivan, the attached patch is against the current CVS code + your
>> It only involves dyn_load.c.
> Not clear. Do you apply only part of the patch? - it won't work in
> this case.
If you cvs update, apply your patch, then apply my patch you'll have
the same state that I do. I can do something differently if you like.
>> I'm still not completely sure how this is
>> supposed to work relative to the way the linux code uses the
>> I think this is what you're after.
> Not very clear again but...
> On any platform where the dylib filename is known - this should be
> relatively easy - just before adding a data section call that
> callback function (if it returns 0 when skip this section).
> Note: since currently the callback is invoked with the alloc lock
> held, GC_add_roots_inner()+locking should be used instead of
>> Also, there are a couple of unrelated problems:
>> Some of the dyld functions called by dyn_load.c are deprecated in
>> and its not clear what the replacements should be. The existing calls
>> still work so no worries there yet.
>> I'm getting this on linking:
>> Undefined symbols:
>> "_GC_with_callee_saves_pushed", referenced from:
>> _GC_push_regs_and_stack in mark_rts.o
>> _GC_do_blocking in pthread_support.o
>> So I can't test this code in the CVS cut + your patch. However, my
>> slightly older cut seems to work fine.
> OK. You've solved it already.
More information about the Gc