From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 40490 invoked by alias); 30 Aug 2015 02:35:49 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 40464 invoked by uid 89); 30 Aug 2015 02:35:44 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_SOFTFAIL autolearn=no version=3.3.2 X-HELO: mtaout21.012.net.il Received: from mtaout21.012.net.il (HELO mtaout21.012.net.il) (80.179.55.169) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 30 Aug 2015 02:35:41 +0000 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0NTV00600IOIFJ00@a-mtaout21.012.net.il> for gdb-patches@sourceware.org; Sun, 30 Aug 2015 05:35:38 +0300 (IDT) Received: from HOME-C4E4A596F7 ([84.94.185.246]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NTV0063WJ7DEN10@a-mtaout21.012.net.il>; Sun, 30 Aug 2015 05:35:38 +0300 (IDT) Date: Sun, 30 Aug 2015 02:35:00 -0000 From: Eli Zaretskii Subject: Re: [RFC] Block all async signals used by gdb when initializing Guile In-reply-to: To: Doug Evans Cc: gdb-patches@sourceware.org, guile-devel@gnu.org Reply-to: Eli Zaretskii Message-id: <83twrh1p1b.fsf@gnu.org> References: <831tel3o68.fsf@gnu.org> <83wpwd26lt.fsf@gnu.org> X-IsSubscribed: yes X-SW-Source: 2015-08/txt/msg00852.txt.bz2 > Date: Sat, 29 Aug 2015 13:39:55 -0700 > From: Doug Evans > Cc: "gdb-patches@sourceware.org" , guile-devel > > On Sat, Aug 29, 2015 at 1:16 PM, Eli Zaretskii wrote: > >> Date: Sat, 29 Aug 2015 12:20:24 -0700 > >> From: Doug Evans > >> Cc: "gdb-patches@sourceware.org" , guile-devel > >> > >> > What about platforms that don't have sigprocmask, but do have SIGINT? > >> > Don't we want to block SIGINT on those platforms? > >> > >> Do they have threads > > > > They might. (The only way I've succeeded to have a working Guile on > > Windows was to disable threads, but I hope that bug will be fixed one > > day.) > > > >> and how does one block SIGINT on those platforms? > > > > With a call to 'signal', I guess. > > I'm guessing that won't work here, we'll need something else. I don't understand why. Can you explain? Maybe I'm missing something. > The issue is we need the threads that guile starts > to have these signals blocked. Then after guile init > returns we unblock the signals. Inhibit SIGINT ech time before calling Guile and restore it after Guile returns. Wouldn't that do what you want?