From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: emacs from head segfaults when run with -nw Date: Mon, 05 Apr 2010 19:49:56 +0300 Message-ID: <83sk79yhcb.fsf@gnu.org> References: <83bpdyz2vz.fsf@gnu.org> <837homyowe.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1270486208 30789 80.91.229.12 (5 Apr 2010 16:50:08 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 5 Apr 2010 16:50:08 +0000 (UTC) To: ams@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Apr 05 18:50:07 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1NypUz-0000BR-8X for ged-emacs-devel@m.gmane.org; Mon, 05 Apr 2010 18:50:05 +0200 Original-Received: from localhost ([127.0.0.1]:38704 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NypUy-0005AO-LS for ged-emacs-devel@m.gmane.org; Mon, 05 Apr 2010 12:50:04 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NypUu-0005AB-Pq for emacs-devel@gnu.org; Mon, 05 Apr 2010 12:50:00 -0400 Original-Received: from [140.186.70.92] (port=43876 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NypUr-00059E-0g for emacs-devel@gnu.org; Mon, 05 Apr 2010 12:50:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NypUo-0004bK-8K for emacs-devel@gnu.org; Mon, 05 Apr 2010 12:49:56 -0400 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:32851) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NypUm-0004aW-33; Mon, 05 Apr 2010 12:49:52 -0400 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0L0E00800XCXGI00@a-mtaout23.012.net.il>; Mon, 05 Apr 2010 19:49:50 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([77.124.92.42]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0L0E006KQXF1XX60@a-mtaout23.012.net.il>; Mon, 05 Apr 2010 19:49:50 +0300 (IDT) In-reply-to: <837homyowe.fsf@gnu.org> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:123214 Archived-At: > Date: Mon, 05 Apr 2010 17:06:41 +0300 > From: Eli Zaretskii > Cc: emacs-devel@gnu.org > > In my case, I found so far that one of the submaps of > Buffer-menu-mode-map is corrupted (a NULL pointer): > > #2 0x01068682 in mark_char_table (ptr=0x2fee200) at alloc.c:5393 > 5393 mark_char_table (XVECTOR (val)); > (gdb) p *ptr > $33 = { > size = 3222274066, > next = 0x2ff3000, > contents = {4} > } > (gdb) p ptr->contents[0] > $34 = 4 > (gdb) p size > $35 = 18 > (gdb) p ptr->contents[1] > $36 = 0 > (gdb) p ptr->contents[2] > $37 = 50252549 > (gdb) xtype > Lisp_Vectorlike > PVEC_SUB_CHAR_TABLE > (gdb) xvector > $38 = (struct Lisp_Vector *) 0x0 <<<<<<<<<<<<<<<< > Cannot access memory at address 0x0 <<<<<<<<<<<<<<<< > (gdb) That was incorrect, sorry. Here is a more accurate account: #2 0x01068682 in mark_char_table (ptr=0x2fee200) at alloc.c:5393 5393 mark_char_table (XVECTOR (val)); (gdb) p val $29 = 0 (gdb) down #1 0x01068649 in mark_char_table (ptr=0x2fecb00) at alloc.c:5396 5396 mark_object (val); (gdb) p size $30 = 34 (gdb) p i $31 = 8 (gdb) p *ptr->contents@34 $32 = {8, 0, 50277381, 46032898, 46032898, 46032898, 46032898, 46024706, 46032898 } (gdb) p ptr->contents[7] $33 = 46024706 (gdb) p *$33 $34 = 702 (gdb) xtype Lisp_Cons (gdb) xcons $35 = (struct Lisp_Cons *) 0x2b8 <<<<<<<<<<<<<<<< Cannot access memory at address 0x2b8 <<<<<<<<<<<<<<<< (gdb) p ptr->contents[6] $36 = 46032898 (gdb) xtype Lisp_Symbol (gdb) xsymbol $37 = (struct Lisp_Symbol *) 0x2be6800 "nil" So 46032898 is nil, but what is the mysterious 46024706? Observe: (gdb) p/x 46032898 $41 = 0x2be6802 (gdb) p/x 46024706 $42 = 0x2be4802 So 46024706 is nil with one of its bits reset! What does it mean? A bad memory chip in my computer? In the "good" session (unoptimized build), btw, the contents of the same char-table is dandy: #0 mark_char_table (ptr=0x3011b00) at alloc.c:5388 5388 if (INTEGERP (val) || SYMBOLP (val) && XSYMBOL(val)->gcmarkbit) (gdb) p val $56 = 46221314 (gdb) xtype Lisp_Symbol (gdb) xsymbol $57 = (struct Lisp_Symbol *) 0x2c14800 "nil" (gdb) p size $58 = 34 (gdb) p *ptr->contents@34 $59 = {8, 0, 50483205, 46221314 } 46221314 is nil, as you see above. Ideas?