Subject: Re: bug#79193: 31.0.50; feature/igc: crashes with no gui frame

From: Gerd Möllmann <[email-masked]>
Date: Thu, 07 Aug 2025 20:18:44 +0200

Pip Cet <[email-masked]> writes:

> Pip Cet <[email-masked]> writes:
>
>> "john muhl" <[email-masked]> writes:
>
>>> (gdb) bt full
>>> #0  terminate_due_to_signal (sig=11, backtrace_limit=40) at emacs.c:444
>>> No locals.
>>> #1  0x000055555589a228 in handle_fatal_signal (sig=11) at sysdep.c:1793
>>> No locals.
>>> #2  0x000055555589a2b2 in deliver_thread_signal (sig=11, handler=0x55555589a210 <handle_fatal_signal>) at sysdep.c:1785
>>>         old_errno = 2
>>> #3  0x00005555558959ea in deliver_fatal_thread_signal (sig=11) at sysdep.c:1805
>>> No locals.
>>> #4  0x000055555589a342 in handle_sigsegv (sig=11, siginfo=0x555555bfb7f0 <sigsegv_stack+62928>, arg=0x555555bfb6c0 <sigsegv_stack+62624>) at sysdep.c:1943
>>>         fatal = false
>>> #5  <signal handler called>
>>> No locals.
>>> #6  0x00007ffff57d0327 in __GI_kill () at ../sysdeps/unix/syscall-template.S:120
>>> No locals.
>>> #7  0x0000555555b5f0f9 in sigHandle ()
>>> No symbol table info available.
>>> #8  <signal handler called>
>>> No locals.
>>> #9  0x00005555556ca07a in line_hash_code (f=0x7fff43aae670, row=0x555556059240) at dispnew.c:1196
>>>         c = 32
>>>         face_id = 0
>>>         glyph = 0x55556d380850
>>>         end = 0x55556d3820d0
>>>         hash = 0
>>
>> Could you show glyph->frame, f, *glyph->frame, and *f in this stack
>> frame?
>>
>> Is it possible we're simply failing to trace glyph->frame in
>> fix_glyph_matrix? Is there some reason those frames should be pinned,
>> but might fail to be?
>
> Assuming the answers are "yes" and "no", respectively, I think these two
> patches might help:
>
> John, would it be possible for you to keep your current Emacs session
> alive in gdb but start a new one with these patches to see whether the
> issue still happens?

I'd rather recommend trying with the commit I mentioned in
my other mail reverted. That should add the tracing of glyph::frame to
the pools. Then let's see further.

> Of course, this may fail to work because of the glyph pool tracing bug
> Helmut discovered; Helmut, do you have a preference for how to fix
> that?

Has there been proof of the bug meanwhile? In the case where Helmut said
that, glyph pools were not even used.