On further reflection, perhaps you should use RTGC instead of direct lock and unlock of `eif_gc_mutex'.