From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Pip Cet via "Emacs development discussions." Newsgroups: gmane.emacs.devel Subject: Re: igc, macOS avoiding signals Date: Sun, 29 Dec 2024 12:22:53 +0000 Message-ID: <87jzbid6hm.fsf@protonmail.com> References: <799DDBC5-2C14-4476-B1E0-7BA2FE9E7901@toadstyle.org> <87h66ng4bf.fsf@protonmail.com> <3A7135F0-64AD-4577-BDA7-ACE1E60B7364@toadstyle.org> Reply-To: Pip Cet Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21326"; mail-complaints-to="usenet@ciao.gmane.io" Cc: gerd.moellmann@gmail.com, emacs-devel@gnu.org To: Sean Devlin Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Dec 29 14:34:20 2024 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1tRtQy-0005OU-0D for ged-emacs-devel@m.gmane-mx.org; Sun, 29 Dec 2024 14:34:20 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tRtQ8-00008j-Bh; Sun, 29 Dec 2024 08:33:28 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tRsJz-0007G5-1x for emacs-devel@gnu.org; Sun, 29 Dec 2024 07:23:03 -0500 Original-Received: from mail-10628.protonmail.ch ([79.135.106.28]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tRsJx-0005Ue-8A for emacs-devel@gnu.org; Sun, 29 Dec 2024 07:23:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1735474976; x=1735734176; bh=o/1d1FuNmcIxu0+VgASfsCDxMVga5YBwQ4/s8igL6Uk=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post; b=M3hsQGofrAGggh0scGYHJq9W8dphvLeETRpm/ujq8mbWCk1/XTodR95yodFkYx/vB mqd4rwDokgr1Z+Ak5l0/ouQbA1YlJpnZy7cBtr1//X8aIHM9IJGlyutUBi62i41uQy WDjI6FOX5pPiaZcsGJQSFyX5jgVGp3mT6OOjGU+r8ZyfBjjzwjJ6fGVRwJmTyo1+BU Mgf9LGJxTcYVRF6EM926oL8HApmQQyFaRpwANJB3LMDjkO5ou6qEplyxzSp9ps6dnI 7sDTT6X6Fb1HZwRtIGuM0HSx7wv9IS76LwZSx1hlLXtfUhO2rTtZnlrKWXW1YK3hT5 OtwmqfB5EToGA== In-Reply-To: <3A7135F0-64AD-4577-BDA7-ACE1E60B7364@toadstyle.org> Feedback-ID: 112775352:user:proton X-Pm-Message-ID: f364603c6dc4a82b291046d05d2d247ae4590a9d Received-SPF: pass client-ip=79.135.106.28; envelope-from=pipcet@protonmail.com; helo=mail-10628.protonmail.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sun, 29 Dec 2024 08:33:24 -0500 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:327332 Archived-At: "Sean Devlin" writes: > Hi Pip, > >> On Dec 29, 2024, at 1:29=E2=80=AFAM, Pip Cet wro= te: >> >>> I'll try to come up with a patch. >> >> This should provide some data (on stderr) about which signals we delay, >> and for how long (the "delayed" messages). It also includes some >> information on additional points at which we can detect whether signals >> are pending (the "delaying" messages); it's probably safe to run them at >> that point, but the code might need some changes because other signals >> (or even the signal in question) might be legitimately blocked when we >> reach that point. >> >> If the "delaying" messages indicate acceptable (initial) delays, we >> might get away with simply calling gc_maybe_quit more often. If they >> don't, further fixes will be necessary, or we need to find more such >> points. >> >> On POSIX systems where we can spare an additional signal, we can run a >> separate thread to ask us to retry running signal handlers when the >> arena lock might be available again. >> >> Or we could move to a separate thread for slow-path allocations. >> > > I=E2=80=99ve built Emacs with your patch. After running Emacs -Q for a fe= w minutes, I can confirm I see a few log statements: Can you try setting igc-step-interval to a small float value, like 0.05 ? As long as it's just a few messages, I don't think it'd cause significant problems, but maybe enabling the background work would do something. > Please let me know if there are any particular tasks you=E2=80=99d like m= e to try, or if I should just collect the logs in the background during gen= eral usage. Repeatedly hitting "s" in an M-x igc-stats buffer should cause more messages, but that uses IGC in an atypical fashion, so I'm not sure that's actually useful data... Thanks! Pip