all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Gerd Möllmann" <gerd.moellmann@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 60220@debbugs.gnu.org, Aaron Jensen <aaronjensen@gmail.com>
Subject: bug#60220: 29.0.60; macOS 13.1 crash shortly after starting Emacs
Date: Wed, 21 Dec 2022 14:29:27 +0100	[thread overview]
Message-ID: <2A22C718-57EA-4B8C-B931-5A3A87191DCD@gmail.com> (raw)
In-Reply-To: <83bknxaqvl.fsf@gnu.org>

If I remember that correctly, installed signal handlers don’t survive process replacement. The man pages for execve and sigaction should tell. 

If that’s the case the new process has a default handler for SIGALRM which terminates. 

But please check the man pages if that’s true. 

Sent from my iPhone

> On 21. Dec 2022, at 13:22, Eli Zaretskii <eliz@gnu.org> wrote:
> 
> 
>> 
>> From: Aaron Jensen <aaronjensen@gmail.com>
>> Date: Tue, 20 Dec 2022 22:47:46 -0500
>> Cc: 60220@debbugs.gnu.org
>> 
>>>> Process 19414 exited with status = 14 (0x0000000e) Terminated due to signal 14
>>> 
>>> What is "signal 14" on macOS?
>> 
>> This is all I could find:
>> 
>>     14    SIGALRM      terminate process    real-time timer expired
>> 
>> I'm able to reproduce the above without native compilation as well.
>> This particular thing only happens when in a lldb and doesn't affect
>> me in practice.
> 
> The only place we use SIGALRM in Emacs is in interval timesr (see
> atimer.c), which are used for stuff like hour-glass cursor and input
> polling.
> 
> Once again, this might mean we are not cleaning up the process state
> before calling execvp.  But that is just a speculation.
> 
>>> Anyway, look at the code: we restart by calling execvp.  You or
>>> someone who knowns macOS internals should take a look at what that
>>> means for shared libraries which were loaded by the program that calls
>>> execvp -- what happens with those libraries in the execvp'ed process.
>>> I'm guessing that they are not being unloaded and re-loaded by the new
>>> process, or something to that effect.
>>> 
>>> Or maybe the way we load the *.eln files causes this, triggered by
>>> 'execvp'?
>> 
>> This is out of my depth.
> 
> Mine as well.  Gerd, any ideas or hints?
> 
>> I did a tiny bit of digging and didn't find anything.
> 
> Likewise.
> 
>>> Can you try running for a while Emacs built without native compilation
>>> and restarting it?  That could tell us whether the *.eln files are the
>>> problem.
>> 
>> I wasn't able to reproduce it w/o native compilation. I'm going to try
>> running w/ native compilation for a while *without* doing any restarts
>> and see if I can get it to crash. I've seen crashes take an hour+
>> after a restart (though most happen w/in 30 seconds). I can't say
>> definitively that all crashes have happened in a restarted process.
> 
> OK, thanks.





  reply	other threads:[~2022-12-21 13:29 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-20 15:11 bug#60220: 29.0.60; macOS 13.1 crash shortly after starting Emacs Aaron Jensen
2022-12-20 15:25 ` Aaron Jensen
2022-12-20 15:41   ` Eli Zaretskii
2022-12-20 15:59     ` Aaron Jensen
2022-12-20 17:23       ` Eli Zaretskii
2022-12-21  3:47         ` Aaron Jensen
2022-12-21 12:22           ` Eli Zaretskii
2022-12-21 13:29             ` Gerd Möllmann [this message]
2022-12-22  5:09               ` Aaron Jensen
2022-12-22  5:12                 ` Aaron Jensen
2022-12-22  5:36                   ` Gerd Möllmann
2022-12-22  8:18                     ` Eli Zaretskii
2022-12-23  2:05                       ` Paul Eggert
2022-12-23  2:22                         ` Aaron Jensen
2022-12-23  5:33                           ` Gerd Möllmann
2022-12-23  5:56                           ` Paul Eggert
2022-12-24  6:45                             ` Aaron Jensen
2022-12-24  6:57                               ` Eli Zaretskii
2022-12-24  7:03                                 ` Aaron Jensen
2022-12-24  8:25                                 ` Paul Eggert
2022-12-24 15:11                             ` Aaron Jensen
2022-12-25  5:30                               ` Gerd Möllmann
2022-12-25 19:30                                 ` Aaron Jensen
2022-12-25 19:59                                   ` Eli Zaretskii
2022-12-27 11:12                                     ` Aaron Jensen
2022-12-27 13:11                                       ` Eli Zaretskii
2022-12-29 22:47                                         ` Aaron Jensen
2022-12-29 23:46                                           ` Aaron Jensen
2022-12-29 23:49                                             ` Paul Eggert
2022-12-29 23:59                                               ` Aaron Jensen
2022-12-30  0:03                                                 ` Aaron Jensen
2022-12-30  1:16                                                   ` Paul Eggert
2022-12-30  1:20                                                     ` Aaron Jensen
2022-12-30  2:11                                                     ` Aaron Jensen
2022-12-30  3:54                                                       ` Aaron Jensen
2022-12-30  4:24                                                         ` Aaron Jensen
2022-12-30  4:25                                                           ` Aaron Jensen
2022-12-30  7:41                                                             ` Gerd Möllmann
2022-12-30  8:03                                                               ` Aaron Jensen
2022-12-30  8:42                                                                 ` Gerd Möllmann
2022-12-30 13:37                                                                   ` Aaron Jensen
2022-12-30 13:52                                                                     ` Aaron Jensen
2022-12-30 14:24                                                                       ` Aaron Jensen
2022-12-30 15:27                                                                       ` Gerd Möllmann
2022-12-30 15:50                                                                         ` Aaron Jensen
2022-12-30  8:37                                                     ` Eli Zaretskii
2022-12-30 13:36                                                       ` Aaron Jensen
2022-12-30 14:18                                                         ` Eli Zaretskii
2022-12-30 22:42                                                       ` Paul Eggert
2022-12-31  6:33                                                         ` Eli Zaretskii
2022-12-30  8:32                                                   ` Eli Zaretskii
2023-01-04 15:51                                                     ` Andrea Corallo
2023-01-04 16:58                                                       ` Eli Zaretskii
2023-01-10 15:28                                                         ` Andrea Corallo
2023-01-10 16:57                                                           ` Eli Zaretskii
2023-01-10 22:59                                                           ` Aaron Jensen
2023-01-12 11:01                                                             ` Andrea Corallo
2023-01-14 16:23                                                               ` Aaron Jensen
2022-12-30  0:08                                                 ` Paul Eggert
2022-12-30  8:29                                               ` Eli Zaretskii
2022-12-22  8:05                   ` Eli Zaretskii
2022-12-20 15:32 ` Eli Zaretskii
2022-12-20 15:36   ` Aaron Jensen

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2A22C718-57EA-4B8C-B931-5A3A87191DCD@gmail.com \
    --to=gerd.moellmann@gmail.com \
    --cc=60220@debbugs.gnu.org \
    --cc=aaronjensen@gmail.com \
    --cc=eliz@gnu.org \
    /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 external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.