[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: igc, macOS avoiding signals
From: |
Gerd Möllmann |
Subject: |
Re: igc, macOS avoiding signals |
Date: |
Mon, 30 Dec 2024 19:37:38 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Helmut Eller <eller.helmut@gmail.com>
>> Cc: Pip Cet <pipcet@protonmail.com>, Eli Zaretskii <eliz@gnu.org>,
>> spd@toadstyle.org, emacs-devel@gnu.org
>> Date: Mon, 30 Dec 2024 17:57:02 +0100
>>
>> On Mon, Dec 30 2024, Gerd Möllmann wrote:
>>
>> > Bool (LockIsHeld)(Lock lock)
>> > {
>> > AVERT(Lock, lock);
>> > if (pthread_mutex_trylock(&lock->mut) == 0) {
>> > Bool claimed = lock->claims > 0;
>> > int res = pthread_mutex_unlock(&lock->mut);
>> > AVER(res == 0);
>> > return claimed;
>> > }
>> > return TRUE;
>> > }
>> >
>> > There might be a small window after pthread_mutex_trylock and being back
>> > in the signal handler. Can anything happen in this window?
>> >
>> > If no other Emacs threads are running, and the Emacs thread is in the
>> > signal handler, we can trust the "false" from the mps_arena_busy.
>>
>> Theoretically, a signal handler could interrupt the Emacs thread and
>> lock the mutex without unlocking it. That would be a very unusual
>> signal handler. I hope no other surprises happen in signal handlers.
>
> We should keep our signal handlers very simple and safe, that's true.
> It is not very hard, and much of that work was already done, when we
> stopped running complex stuff in SIGIO handler etc.
So, to summarize, everyone agrees with Helmut?
- Re: igc, macOS avoiding signals, (continued)
- Re: igc, macOS avoiding signals, Pip Cet, 2024/12/30
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/30
- Re: igc, macOS avoiding signals, Helmut Eller, 2024/12/30
- Re: igc, macOS avoiding signals, Pip Cet, 2024/12/30
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/30
- Re: igc, macOS avoiding signals, Helmut Eller, 2024/12/30
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/30
- Re: igc, macOS avoiding signals, Eli Zaretskii, 2024/12/30
- Re: igc, macOS avoiding signals,
Gerd Möllmann <=
- Re: igc, macOS avoiding signals, Eli Zaretskii, 2024/12/30
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/30
- Re: igc, macOS avoiding signals, Helmut Eller, 2024/12/31
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/31
- Re: igc, macOS avoiding signals, Helmut Eller, 2024/12/31
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/31
- Re: igc, macOS avoiding signals, Pip Cet, 2024/12/31
- Re: igc, macOS avoiding signals, Eli Zaretskii, 2024/12/31
- Re: igc, macOS avoiding signals, Gerd Möllmann, 2024/12/31
- Re: igc, macOS avoiding signals, Eli Zaretskii, 2024/12/31