From: Eval EXEC <execvy@gmail.com>
To: Pip Cet <pipcet@protonmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>,
gerd.moellmann@gmail.com, emacs-devel@gnu.org
Subject: Re: [scratch/igc] 985247b6bee crash on Linux, KDE, Wayland
Date: Fri, 06 Sep 2024 21:14:16 +0800 [thread overview]
Message-ID: <87r09wc4bb.fsf@gmail.com> (raw)
In-Reply-To: <8734mdey75.fsf@protonmail.com> (Pip Cet's message of "Fri, 06 Sep 2024 12:58:08 +0000")
Pip Cet <pipcet@protonmail.com> writes:
> "Eval EXEC" <execvy@gmail.com> writes:
>
>> Pip Cet <pipcet@protonmail.com> writes:
>>
>>> "Eval EXEC" <execvy@gmail.com> writes:
>>>
>>>>> Thanks, and sorry you're seeing so many crashes. It's stable here, so
>>>>> we're going to need your help debugging this :-)
>>>>
>>>> Thanks for the update. No problem. I'm really happy to debug with you all.
>>>> 全世界 Emacs 用户联合起来, Make Emacs Great Again!
>>>
>>> That's great :-)
>>>
>>>>> Did you use any special options or patches when building mps (link time
>>>>> optimization or -O3, in particular)?
>>>>
>>>> No special options or patches
>>>
>>>>> This is the cons cell itself (the IGC header is what "cons" points to).
>>>>>
>>>>> Please also run
>>>>>
>>>>> (gdb) x/64gx 0x7f08addd0600
>>>> It's
>>>> (gdb) x/64gx 0x7f08addd0600
>>>> 0x7f08addd0600: 0x00007f08addd063b 0x00000003df45210d
>>>> 0x7f08addd0610: 0x0000000000000000 0x00007f08addd0653
>>>> 0x7f08addd0620: 0x00000003df45240d 0x0000000000012638
>>>
>>> We need to look up a few builtin symbols: 0x12638 is the first one,
>>> corresponding to symbol index 1345.
>>>
>>>> 0x7f08addd0630: 0x00007f08addd066b 0x00000003df44f80d
>>>> 0x7f08addd0640: 0x0000000000000000 0x00007f08addd0683
>>>> 0x7f08addd0650: 0x00000003df45220d 0x000000000000a5d0
>>>
>>> 0xa5d0 is the next one, and that's index 758.
>>>
>>>> 0x7f08addd0660: 0x00007f08addd069b 0x00000003df45250d
>>>> 0x7f08addd0670: 0x0000000000000038 0x00007f08addd06b3
>>>
>>> 0x38 is t.
>>>
>>>> 0x7f08addd0680: 0x00000003df44f90d 0x000000000000a5d0
>>>> 0x7f08addd0690: 0x00007f08addd06cb 0x00000003df45230d
>>>> 0x7f08addd06a0: 0x00007f08addd06e3 0x0000000000000000
>>>> 0x7f08addd06b0: 0x00000003df45260d 0x00007f0889546b70
>>>> 0x7f08addd06c0: 0x00007f08936d87d3 0x00000003df44fa0d
>>>> 0x7f08addd06d0: 0x00007f08936ceb33 0x0000000000000000
>>>> 0x7f08addd06e0: 0x00000003df44e70d 0x0000000000001538
>>>
>>> 0x1538 is the last one, and that's index 97.
>>>
>>> In gdb, can you run
>>>
>>> (gdb) print defsym_name[97]
>>> (gdb) print defsym_name[758]
>>> (gdb) print defsym_name[1345]
>>>
>>> to see which symbol corresponds to each index?
>>>
>>> Thanks!
>>>
>>> Pip
>> It's
>> (gdb) print defsym_name[97]
>> $9 = <optimized out>
>> (gdb) print defsym_name[758]
>> $10 = <optimized out>
>> (gdb) print defsym_name[1345]
>> $11 = <optimized out>
>
> Can you try what Eli suggested?
>
> (gdb) p 0xa5d0
> (gdb) xsymbol
> (gdb) p 0x1538
> (gdb) xsymbol
> (gdb) p 0x12638
> (gdb) xsymbol
(gdb) p 0xa5d0
$3 = 42448
(gdb) xsymbol
$4 = (struct Lisp_Symbol *) 0xd264b0 <lispsym+42448>
"font-lock-face"
(gdb) p 0x1538
$5 = 5432
(gdb) xsymbol
$6 = (struct Lisp_Symbol *) 0xd1d418 <lispsym+5432>
":foreground"
(gdb) p 0x12638
$7 = 75320
(gdb) xsymbol
$8 = (struct Lisp_Symbol *) 0xd2e518 <lispsym+75320>
"rear-nonsticky"
> If that also fails, can you find the globals.h that was generated when
> Emacs was built and find out which iQ... is 97, 758, and 1345?
It's
```
emacs on scratch/igc via ❄️ impure (nix-shell)
❯ fd -I -H globals.h
src/globals.h
emacs on scratch/igc via ❄️ impure (nix-shell)
❯ grep -C 1 "97\|758\|1345" -w src/globals.h
DEFINE_LISP_SYMBOL (QCfontset)
#define iQCforeground 97
DEFINE_LISP_SYMBOL (QCforeground)
--
DEFINE_LISP_SYMBOL (Qfont_extra_type)
#define iQfont_lock_face 758
DEFINE_LISP_SYMBOL (Qfont_lock_face)
--
DEFINE_LISP_SYMBOL (Qreally_fast)
#define iQrear_nonsticky 1345
DEFINE_LISP_SYMBOL (Qrear_nonsticky)
--
# define QCfontset builtin_lisp_symbol (96)
# define QCforeground builtin_lisp_symbol (97)
# define QCformat builtin_lisp_symbol (98)
--
# define Qfont_extra_type builtin_lisp_symbol (757)
# define Qfont_lock_face builtin_lisp_symbol (758)
# define Qfont_name builtin_lisp_symbol (759)
--
# define Qreally_fast builtin_lisp_symbol (1344)
# define Qrear_nonsticky builtin_lisp_symbol (1345)
# define Qrecord builtin_lisp_symbol (1346)
```
next prev parent reply other threads:[~2024-09-06 13:14 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-05 6:24 [scratch/igc] 985247b6bee crash on Linux, KDE, Wayland Eval EXEC
2024-09-05 7:14 ` Eval EXEC
2024-09-05 8:17 ` Eval EXEC
2024-09-05 7:21 ` Eval EXEC
2024-09-05 8:08 ` Eli Zaretskii
2024-09-05 8:14 ` Eval EXEC
2024-09-05 11:12 ` Pip Cet
2024-09-05 8:24 ` Helmut Eller
2024-09-05 8:28 ` Eval EXEC
2024-09-05 8:34 ` Helmut Eller
2024-09-05 8:37 ` Eval EXEC
2024-09-05 10:44 ` Eval EXEC
2024-09-05 11:01 ` Eli Zaretskii
2024-09-05 11:04 ` Eval EXEC
2024-09-05 11:09 ` Pip Cet
2024-09-05 11:15 ` Eval EXEC
2024-09-05 11:19 ` Pip Cet
2024-09-05 11:26 ` Eval EXEC
2024-09-05 16:04 ` Pip Cet
2024-09-05 16:32 ` Eval EXEC
2024-09-05 11:34 ` Eval EXEC
2024-09-05 11:49 ` Eval EXEC
2024-09-05 12:21 ` Eli Zaretskii
2024-09-05 13:20 ` Gerd Möllmann
2024-09-05 13:31 ` Eli Zaretskii
2024-09-05 13:37 ` Gerd Möllmann
2024-09-05 13:52 ` Eli Zaretskii
2024-09-05 13:57 ` Gerd Möllmann
2024-09-05 14:33 ` Eli Zaretskii
2024-09-05 14:44 ` Eli Zaretskii
2024-09-05 14:58 ` Gerd Möllmann
2024-09-05 16:19 ` Pip Cet
2024-09-05 16:40 ` Eval EXEC
2024-09-05 16:45 ` Eval EXEC
2024-09-05 16:57 ` Eval EXEC
2024-09-05 16:59 ` Eval EXEC
2024-09-05 17:03 ` Pip Cet
2024-09-05 17:05 ` Eval EXEC
2024-09-05 17:16 ` Gerd Möllmann
2024-09-05 18:46 ` Eli Zaretskii
2024-09-05 19:24 ` Gerd Möllmann
2024-09-05 19:31 ` Eli Zaretskii
2024-09-05 18:48 ` Eli Zaretskii
2024-09-05 18:56 ` Eval EXEC
2024-09-05 19:23 ` Eli Zaretskii
2024-09-05 19:31 ` Eli Zaretskii
2024-09-06 2:15 ` Eval EXEC
2024-09-06 3:10 ` Eval EXEC
2024-09-06 5:58 ` Pip Cet
2024-09-06 6:32 ` Eval EXEC
2024-09-06 7:41 ` Pip Cet
2024-09-06 8:28 ` Eval EXEC
2024-09-06 12:58 ` Pip Cet
2024-09-06 13:14 ` Eval EXEC [this message]
2024-09-06 10:57 ` Eli Zaretskii
2024-09-06 13:03 ` Eval EXEC
2024-09-06 19:29 ` Pip Cet
2024-09-07 5:57 ` Eli Zaretskii
2024-09-07 9:05 ` Pip Cet
2024-09-06 6:39 ` Eval EXEC
2024-09-06 7:43 ` Pip Cet
2024-09-07 7:46 ` Eval EXEC
2024-09-07 8:10 ` Pip Cet
2024-09-07 13:20 ` Gerd Möllmann
2024-09-06 6:05 ` Eli Zaretskii
2024-09-06 6:30 ` Pip Cet
2024-09-06 6:34 ` Eval EXEC
2024-09-06 11:49 ` Eli Zaretskii
2024-09-06 13:08 ` Eval EXEC
2024-09-05 19:01 ` Eval EXEC
2024-09-05 17:29 ` Eval EXEC
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87r09wc4bb.fsf@gmail.com \
--to=execvy@gmail.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=gerd.moellmann@gmail.com \
--cc=pipcet@protonmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).