Date: Sun, 12 Sep 2004 10:40:15 -0700 From: Julian Elischer <julian@elischer.org> To: Joost Bekkers <joost@jodocus.org> Cc: freebsd-threads@freebsd.org Subject: Re: SIGILL @ pthread_create() after execv Message-ID: <414489FF.3090705@elischer.org> In-Reply-To: <20040912141838.GA89862@bps.jodocus.org> References: <20040912141838.GA89862@bps.jodocus.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Joost Bekkers wrote: > Hello > > After upgrading to 5.3-BETA3 (from 5.2.1-p9) one of my programs started to crash with > Illigal Instruction (SIGILL) after it restarted itself with a execv > > gdb is telling me: > > Program terminated with signal 4, Illegal instruction. > #0 0x28274d3f in pthread_testcancel () from /usr/lib/libpthread.so.1 > (gdb) where > #0 0x28274d3f in pthread_testcancel () from /usr/lib/libpthread.so.1 > #1 0x2826126d in pthread_create () from /usr/lib/libpthread.so.1 > #2 0x08151364 in rdns_cache_init () at rdns_cache.c:317 > #3 0x081513d6 in gethostname_cached (addr=0x9cb757e "?d?", len=4, ttl_refresh=0) at rdns_cache.c:336 > #4 0x0811b17a in dns_gethostname (desc=0x9cb756c) at fd_network.c:130 > #5 0x080cb25e in fread_char (ch=0x9cb8418, fp=0x8244180) at save.c:1215 > #6 0x080ca539 in load_char_obj (d=0x9cb756c, name=0xbfbfd960 "Jodocus") at save.c:930 > #7 0x0811afa9 in copyover_recover_players () at fd_copyover.c:337 > #8 0x0807a1d7 in main (argc=5, argv=0xbfbfec70) at comm.c:256 > > I'm at a loss on how to get to the bottom of this problem. I suspect we've screwed execve for threaded progrms :-) Guys I probably have to free the 'upcall' structure or the first ptrhead call after execvs will find th e old one and try upcall to the wrong place.. I'll look at this tonight I hope.. thanks for the report.. > > Can anybody shed some light on this? > > thanks >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?414489FF.3090705>