From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: unpredictable emacs 21 crashes Date: Sat, 15 Jun 2002 08:14:00 -0600 (MDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200206151414.g5FEE0G10343@aztec.santafe.edu> References: Reply-To: rms@gnu.org NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1024151256 18918 127.0.0.1 (15 Jun 2002 14:27:36 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sat, 15 Jun 2002 14:27:36 +0000 (UTC) Cc: emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17JEWe-0004v0-00 for ; Sat, 15 Jun 2002 16:27:36 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17JEvw-00048x-00 for ; Sat, 15 Jun 2002 16:53:44 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17JELr-0003Pd-00; Sat, 15 Jun 2002 10:16:27 -0400 Original-Received: from pele.santafe.edu ([192.12.12.119]) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17JEJV-0003FF-00; Sat, 15 Jun 2002 10:14:01 -0400 Original-Received: from aztec.santafe.edu (aztec [192.12.12.49]) by pele.santafe.edu (8.11.6+Sun/8.11.6) with ESMTP id g5FEE0Q05274; Sat, 15 Jun 2002 08:14:00 -0600 (MDT) Original-Received: (from rms@localhost) by aztec.santafe.edu (8.10.2+Sun/8.9.3) id g5FEE0G10343; Sat, 15 Jun 2002 08:14:00 -0600 (MDT) X-Authentication-Warning: aztec.santafe.edu: rms set sender to rms@aztec using -f Original-To: reid+usenet@astro.utoronto.ca In-Reply-To: (message from Rob Reid on Mon, 10 Jun 2002 22:53:13 GMT) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.9 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:4884 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:4884 (gdb) up #1 0x80d6044 in fatal_error_signal () (gdb) up #2 (gdb) up #3 0x811d476 in mark_object () (gdb) up This is a failure in GC. It is natural that there would be many stack frames recursively calling mark_object. To find where GC was called, try moving up the stack many frames at once. Use `up 100' for instance. Try various numbers; do a binary search. Most likely, whatever called GC won't be relevant. The crash is probably due to invalid data. To analyze it you need to study the data being worked on in the innermost frames. By working back one frame at a time, you can see what data structure the invalid objects are found in. The vector last_marked (see alloc.c) can help you trace this back. Once you see if there is a pattern to that, we might have an idea where to look for the real problem. This analysis process is nontrivial, but there's no shortcut except to be very very lucky.