On 2012-10-09 14:48:14, Kirill Bychkov <ya...@linklevel.net> wrote: > > Nope, it's still crashing >
Tangogps started crashing for me when (IIRC) the following commit to rthreads was made. http://www.openbsd.org/cgi-bin/cvsweb/src/lib/librthread/rthread_sync.c.diff?r1=1.33;r2=1.34;f=h I hacked the following patch to restore tangogps to a working state. I should state that I have no idea how this affects the system as a whole beyond the fact that nothing broke for me. Since this is changing undefined behavior, it may be safe but it may also crash your system, format your drives, and sing off-key humppa songs to your pet cat. I mention this patch only to illustrate how the problem started and expect to be sternly corrected by someone who knows better if this patch is going to do terrible things (which I fully expect that it may). I would *strongly* encourage you not to test this on a production system and to make sure that you have backups of whatever system you do try this on. Better to be safe than sorry. ISTR that this change was made deliberately to flush out programs that were sloppy in their usage of threads, but this was long ago and I may be mistaken in that regard. -- Bryan
Index: rthread_sync.c =================================================================== RCS file: /cvs/src/lib/librthread/rthread_sync.c,v retrieving revision 1.36 diff -u -p -u -r1.36 rthread_sync.c --- rthread_sync.c 14 Apr 2012 12:07:49 -0000 1.36 +++ rthread_sync.c 10 Jun 2012 22:01:16 -0000 @@ -215,7 +215,8 @@ pthread_mutex_unlock(pthread_mutex_t *mu mutex->type == PTHREAD_MUTEX_NORMAL) return (0); else - abort(); + return (0); + /* abort(); */ } }