emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MPS: a random backtrace while toying with gdb


From: Eli Zaretskii
Subject: Re: MPS: a random backtrace while toying with gdb
Date: Sun, 30 Jun 2024 07:55:44 +0300

> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Cc: Ihor Radchenko <yantar92@posteo.net>,  emacs-devel@gnu.org,  Eli
>  Zaretskii <eliz@gnu.org>,  eller.helmut@gmail.com
> Date: Sat, 29 Jun 2024 23:46:27 +0200
> 
> Pip Cet <pipcet@protonmail.com> writes:
> 
> > On Saturday, June 29th, 2024 at 19:11, Ihor Radchenko <yantar92@posteo.net> 
> > wrote:
> >> I just got this while starting up Emacs on the latest scratch/igc (with
> >> native-comp).
> >
> > Looks like the same double-signal situation we saw with the profiler, only 
> > this time it's SIGCHLD interrupting an MPS scan.
> >
> > Pip
> 
> Indeed
> 
>   #10 0x0000555555827385 in PSEUDOVECTORP (a=XIL(0x7fffeb90875d), code=9) at 
> /home/yantar92/Git/emacs/src/lisp.h:1105
>   #11 PROCESSP (a=XIL(0x7fffeb90875d)) at 
> /home/yantar92/Git/emacs/src/process.h:212
>   #12 XPROCESS (a=XIL(0x7fffeb90875d)) at 
> /home/yantar92/Git/emacs/src/process.h:224
>   #13 handle_child_signal (sig=sig@entry=17) at process.c:7660
> 
> Someone has an idea what to do with that?

Call sigblock at the beginning of dflt_scan (and friends) and
sigunblock before it returns?

Are there any guidance in the MPS docs for handling such signals in
these situations?  If not, can we ask them for guidance?  It is
unrealistic to expect any real-life program to do nothing in signal
handlers except setting flags.  And even flags could be subject to MPS
moving GC, at least in some cases.  So there must be some way of
dealing with that in a safe way.

> And maybe how to reproduce?

Run for enough time with subprocesses that start and terminate, I
guess?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]