From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Luc Teirlinck Newsgroups: gmane.emacs.devel Subject: Re: Tramp with global-auto-revert-mode. Date: Sat, 15 May 2004 15:44:44 -0500 (CDT) Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <200405152044.i4FKiig02345@raven.dms.auburn.edu> References: <200405122254.i4CMsUj29445@raven.dms.auburn.edu> <200405122326.i4CNQk929511@raven.dms.auburn.edu> <200405132324.i4DNOBs14811@raven.dms.auburn.edu> <200405140008.i4E08lb14858@raven.dms.auburn.edu> <871xln4xmc.fsf-monnier+emacs@gnu.org> <200405140132.i4E1WaH15085@raven.dms.auburn.edu> <87vfiz3fez.fsf-monnier+emacs@gnu.org> <200405140308.i4E38b415540@raven.dms.auburn.edu> <87pt973b7y.fsf-monnier+emacs@gnu.org> <200405150139.i4F1dbs26083@raven.dms.auburn.edu> NNTP-Posting-Host: deer.gmane.org X-Trace: sea.gmane.org 1084654015 26216 80.91.224.253 (15 May 2004 20:46:55 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 15 May 2004 20:46:55 +0000 (UTC) Cc: kai@emptydomain.de, monnier@iro.umontreal.ca, storm@cua.dk, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Sat May 15 22:46:46 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BP63S-0003Dm-00 for ; Sat, 15 May 2004 22:46:46 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1BP63S-0003oO-00 for ; Sat, 15 May 2004 22:46:46 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1BP63B-0005ng-3J for emacs-devel@quimby.gnus.org; Sat, 15 May 2004 16:46:29 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.34) id 1BP631-0005m1-KV for emacs-devel@gnu.org; Sat, 15 May 2004 16:46:19 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.34) id 1BP62R-0005ed-Bx for emacs-devel@gnu.org; Sat, 15 May 2004 16:46:15 -0400 Original-Received: from [131.204.53.104] (helo=manatee.dms.auburn.edu) by monty-python.gnu.org with esmtp (Exim 4.34) id 1BP61s-0005Uy-Up; Sat, 15 May 2004 16:45:09 -0400 Original-Received: from raven.dms.auburn.edu (raven.dms.auburn.edu [131.204.53.29]) by manatee.dms.auburn.edu (8.12.10/8.12.10) with ESMTP id i4FKiuTS007648; Sat, 15 May 2004 15:44:56 -0500 (CDT) Original-Received: (from teirllm@localhost) by raven.dms.auburn.edu (8.11.6+Sun/8.11.6) id i4FKiig02345; Sat, 15 May 2004 15:44:44 -0500 (CDT) X-Authentication-Warning: raven.dms.auburn.edu: teirllm set sender to teirllm@dms.auburn.edu using -f Original-To: rms@gnu.org In-reply-to: (message from Richard Stallman on Sat, 15 May 2004 14:34:04 -0400) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.4 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:23509 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:23509 Richard Stallman wrote: Can you figure out which slot, in which stack frame, is currently being examined within mark_stack? That would probably lead us to the C level bug that directly causes these crashes. I am not familiar at all with how gc checks for memory corruption. Here is just a try. I use the latest crash I got, after Andreas' bugfix. #0 abort () at emacs.c:434 #1 0x0812a575 in mark_object (arg=142231922) at alloc.c:5034 #2 0x0812a5d6 in mark_object (arg=142409733) at alloc.c:5051 #3 0x0812948a in mark_memory (start=0xbffe91d0, end=0xbffff57c) at alloc.c:3781 #4 0x081294f5 in mark_stack () at alloc.c:4055 #5 0x08129aba in Fgarbage_collect () at alloc.c:4429 The abort at alloc.c, line 5034 is the default clause of a switch form. The abort occurs if XMISCTYPE (obj) is none of the listed possibilities. (gdb) up 1 #1 0x0812a575 in mark_object (arg=142231922) at alloc.c:5034 5034 abort (); (gdb) p obj $3 = 142231922 (gdb) p *obj $4 = 1230503937 (gdb) xtype Lisp_Symbol (gdb) xsymbol $5 = (struct Lisp_Symbol *) 0x49580000 Argument to arithmetic operation not a number or boolean. (gdb) p *$5 $6 = { gcmarkbit = 0, indirect_variable = 0, constant = 0, interned = 0, xname = 0, value = 0, function = 0, plist = 0, next = 0x0 } So unless I am confused, this is what the obj that causes the abort points to. Some further info, for whatever it is worth: (gdb) frame 1 #1 0x0812a575 in mark_object (arg=142231922) at alloc.c:5034 5034 abort (); (gdb) p obj $12 = 142231922 (gdb) xtype Lisp_Misc Lisp_Misc_Free (gdb) xmiscfree $13 = (struct Lisp_Free *) 0x87a4970 I do not know whether I am doing the right things here. I am not used to debugging bugs in gc. Sincerely, Luc.