Search
20:05:24
karlosz
does sbcl spin up multiple threads during warm compilation when its compile fileing?
20:05:54
karlosz
i see no evidence that it does yet on sb-thread i seem to be getting non deterministic crashes during warm init
20:09:44
karlosz
how does finalization differ between sb-thread and -sb-thread
20:13:19
karlosz
okay, i see that a new thread is spun up on GC on #+sb-thread to finalize instead of running on its own
20:14:14
karlosz
then could it be that my vops are not GC safe somehow?
20:14:26
karlosz
i guess i can disable finalizer threads to see if it helps
20:44:36
karlosz
no, still get weird races with type errors because of some object with no widetag
21:30:08
karlosz
okay, im pretty certain my alloc-tls-index assembly routine and CAS vops are correct
21:30:21
karlosz
so either the load reserved and store conditional aren't doing what they should be
21:30:28
karlosz
or the problem exists outside those vops
21:30:52
karlosz
these issues don't seem to be related with specials, which is what is confusing
21:31:10
karlosz
that wouldn't cause objects to appear with widetag 0
21:31:54
stassats
widetag 0? how's that even possible? that'd be a cons
21:33:28
karlosz
yeah i don't know, it has an instance lowtag though
21:33:49
karlosz
so it dies pretty inconsistently between room and walk
21:33:59
karlosz
always during compile-file
21:34:16
karlosz
it was trying to call length on an instance with widetag 0 one time
21:34:24
karlosz
another time it said make-sequence-iterator is not defined
21:34:29
karlosz
some other times dropped into ldb
21:34:40
karlosz
yeah, really not seeing a pattern
21:34:53
stassats
length on an instance? ok, make-sequence-iterator
21:35:06
karlosz
some other times it gives a type error saying some IR1 object like ctran or block is not of type layout
21:35:35
stassats
something's moving unnoticed
21:35:56
karlosz
so maybe im keeping an object in a non descriptor?
21:36:09
stassats
good luck finding out where
21:36:21
karlosz
well i know #-sb-thread works
21:36:29
karlosz
so hopefully its just in one of the #+sb-thread vops
21:36:39
karlosz
and CAS seems to work fine on #-sb-thread as well
21:37:03
stassats
if there's no other threads, the only place to trigger gc is during allocation
21:37:08
stassats
so, look at the allocation vops
21:37:44
stassats
those are different between #±sb-thread
21:46:12
stassats
or pseudo-atomic itself is deficient
21:54:26
stassats
could also disable garbage collection, survive warm init and run the tests