From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Neil Jerram Newsgroups: gmane.lisp.guile.devel Subject: Re: Segmentation fault in CVS Date: Fri, 09 Dec 2005 14:09:59 +0000 Message-ID: <8764py1hvs.fsf@ossau.uklinux.net> References: <87ek4oekxs.fsf@ossau.uklinux.net> <4397470B.3070505@gnu.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1134147643 22015 80.91.229.2 (9 Dec 2005 17:00:43 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 9 Dec 2005 17:00:43 +0000 (UTC) Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Fri Dec 09 18:00:37 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EklWy-0001KL-G5 for guile-devel@m.gmane.org; Fri, 09 Dec 2005 17:55:37 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EklXI-0003Dt-Rb for guile-devel@m.gmane.org; Fri, 09 Dec 2005 11:55:57 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ekizo-0002hL-7y for guile-devel@gnu.org; Fri, 09 Dec 2005 09:13:12 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ekizl-0002g9-It for guile-devel@gnu.org; Fri, 09 Dec 2005 09:13:11 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ekizl-0002fs-6T for guile-devel@gnu.org; Fri, 09 Dec 2005 09:13:09 -0500 Original-Received: from [80.84.72.33] (helo=mail3.uklinux.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Ekj0x-0006VX-JR for guile-devel@gnu.org; Fri, 09 Dec 2005 09:14:23 -0500 Original-Received: from laruns (host86-129-132-201.range86-129.btcentralplus.com [86.129.132.201]) by mail3.uklinux.net (Postfix) with ESMTP id 0963A40A010 for ; Fri, 9 Dec 2005 14:12:46 +0000 (UTC) Original-Received: from laruns (laruns [127.0.0.1]) by laruns (Postfix) with ESMTP id D73896F719 for ; Fri, 9 Dec 2005 14:11:30 +0000 (GMT) Resent-To: Guile Development Resent-From: Neil Jerram Resent-Date: Fri, 09 Dec 2005 14:11:30 +0000 Resent-Message-ID: <873bl21ht9.fsf@ossau.uklinux.net> X-From-Line: nobody Fri Dec 9 14:10:04 2005 Original-To: Guile Development In-Reply-To: <4397470B.3070505@gnu.org> (Bruce Korb's message of "Wed, 07 Dec 2005 12:33:15 -0800") User-Agent: Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) Original-Lines: 44 Resent-Date: Fri, 09 Dec 2005 09:13:10 -0500 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:5494 Archived-At: Bruce Korb writes: > Neil Jerram wrote: >> I'm seeing a failure of the test-system-cmds test, and have narrowed >> it down to this: >> neil@laruns:~/guile-cvs-head/guile/guile-core$ ./pre-inst-guile -q >> guile> (exit 42) >> Segmentation fault > > Marius was saying something about returning NULL in some path back > to one of the entry functions. If he really meant NULL and not 0, > then he was talking about some sort of pointer that is taking on the > value of 42? Dunno....I do bet it is related. :( Cheers - Bruce Perhaps, yes. According to GDB the backtrace at the crash is (gdb) bt #0 0x401867f1 in pthread_mutex_lock () from /lib/tls/libpthread.so.0 #1 0x400b6a6b in scm_i_thread_put_to_sleep () at threads.c:1538 #2 0x4009a83f in scm_i_string_writable_chars (orig_str=0x5b) at strings.c:352 #3 0x4009b02d in scm_c_string_set_x (str=0x405c3d00, p=0, chr=0x34) at strings.c:669 #4 0x40090485 in scm_read_token (ic=52, tok_buf=0xbfffe468, port=0x403ddc58, weird=0) at read.c:700 #5 0x4008fff1 in scm_lreadr (tok_buf=0xbfffe468, port=0x403ddc58, copy=0xbfffe46c) at read.c:642 and the problem appears to be that all_threads->next_thread has become invalid: (gdb) p *all_threads $9 = {next_thread = 0xffffffff, handle = 0x405217f8, pthread = 1089387440, join_queue = 0x405217e0, result = 0x4, exited = 0, sleep_object = 0x4, sleep_mutex = 0x0, sleep_cond = {__c_lock = {__status = 0, __spinlock = 0}, ...}...} I'm not sure that's the real problem though, could just be an artefact of stack corruption. I tried breaking at the point (guilify_self_1) where all_threads->next_thread is initialized correctly, and then setting a watchpoint on all_threads->next_thread, but the watchpoint didn't fire and the segmentation fault still occurred. Regards, Neil _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel