|
From: | Paul Eggert |
Subject: | bug#41321: 27.0.91; Emacs aborts due to invalid pseudovector objects |
Date: | Sat, 30 May 2020 11:04:55 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 |
On 5/30/20 6:29 AM, Pip Cet wrote:
I'm surprised, but glad that you think so. Patch for emacs-27 attached.
That patch is on the right track but it's not clear whether it will cause GC to fail to mark some objects that it should, both because it omits mark_maybe_object on platforms like x86 --with-wide-int where alignof (void *) < sizeof (Lisp_Object), and because it skips mark_maybe_pointer on more-typical platforms where alignof (void *) == sizeof (Lisp_Object).
For emacs-27 I propose the attached, more-conservative patch instead. This is a backport of part of a patch I've been working on for master. As part of that effort I've found some other obscure GC-related bugs that we've been lucky to avoid; this patch focuses only on the area Eli encountered.
0001-Be-more-aggressive-in-marking-objects-during-GC.patch
Description: Text Data
[Prev in Thread] | Current Thread | [Next in Thread] |