This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH v2 02/13] script language API for GDB: extension.[ch]
- From: ludo at gnu dot org (Ludovic CourtÃs)
- To: Tom Tromey <tromey at redhat dot com>
- Cc: gdb-patches at sourceware dot org, guile-user at gnu dot org
- Date: Wed, 08 Jan 2014 00:05:43 +0100
- Subject: Re: [PATCH v2 02/13] script language API for GDB: extension.[ch]
- Authentication-results: sourceware.org; auth=none
- References: <52a7f3e8 dot e7ed440a dot 1c58 dot 020f at mx dot google dot com> <87vbyffcwu dot fsf at fleche dot redhat dot com> <CAP9bCMQx_pDKsRTDv5h62kqO4==MTJ80XsZ2RYfpzsjDT1u68g at mail dot gmail dot com> <87txdklqk4 dot fsf at gnu dot org> <87r48kkc9g dot fsf at fleche dot redhat dot com> <87eh4krl81 dot fsf at gnu dot org> <87iotvixu4 dot fsf at fleche dot redhat dot com>
Tom Tromey <tromey@redhat.com> skribis:
> Ludovic> Would it work, upon SIGINT, to do something like:
> Ludovic> (system-async-mark (lambda ()
> Ludovic> (throw 'system-error ... EINTR)))
> Ludovic> That would eventually raise an exception in Scheme code.
>
> According to the Guile docs one must use scm_sigaction, since
> scm_system_async_mark is not async-signal-safe.
Oh, right. This could be worked around by having a separate signal
delivery thread (which is what Guile currently does internally), but
thatâs not so great.
I guess this is another limitation of Guileâs current signal handling
strategy, and something we should fix.
Ludoâ.