>This was when compiled with -g -O2 and no RTL_DEBUG. >I have a coredump factory now. > >[New LWP 9071] >[New LWP 9048] >[New LWP 5670] >[Thread debugging using libthread_db enabled] >Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". >Core was generated by `/usr/local/bin/pike /home/spike.git/spike -n >background'. >Program terminated with signal SIGSEGV, Segmentation fault. >#0 0x00007fd21f0a2be1 in ?? () from /lib/x86_64-linux-gnu/libc.so.6 >[Current thread is 1 (Thread 0x7fd21b9e3700 (LWP 9071))] > >(gdb) where >#0 0x00007fd21f0a2be1 in ?? () from /lib/x86_64-linux-gnu/libc.so.6 >#1 0x00007fd21f0a3cf5 in ?? () from /lib/x86_64-linux-gnu/libc.so.6 >#2 0x000055ebdbda1acd in really_free_mapping (m=0x55ebdd073790) > at /home/srb/pike/src/mapping.c:70 >#3 0x000055ebdbe2ccd8 in really_free_short_svalue_ptr (s=<optimized out>, > type=<optimized out>) at /home/srb/pike/src/svalue.c:72 >#4 0x000055ebdbdbb9a4 in destruct_object (o=0x55ebdcf97010, > reason=reason@entry=DESTRUCT_EXPLICIT) at /home/srb/pike/src/object.c:1030 >#5 0x000055ebdbe463e2 in f_destruct (args=1) > at /home/srb/pike/src/builtin_functions.c:3747 >#6 0x00007fd21d780162 in ?? () >#7 0x0000000000000080 in ?? () >#8 0x0000000000000000 in ?? ()
The above doesn't look like it is directly related to the mutex changes. I guess it could be a reference counting issue or a double free. What does "call gdb_backtraces()" output? Can you identify the program in the variable "prog" in frame #4? Looking at the strings in "prog->strings" may help. Have you tried running under valgrind? /grubba