From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#32452: 26.1; gnutls_try_handshake maxes out cpu retrying when server is a bit busy Date: Tue, 01 Mar 2022 16:36:03 +0100 Message-ID: <87a6e9n0rg.fsf__37425.8710582339$1646149041$gmane$org@gnus.org> References: <87wosqwlu3.fsf@gmail.com> <83d0uhgoxw.fsf@gnu.org> <87ftzcwso7.fsf@gmail.com> <83pnygfajo.fsf@gnu.org> <874lfownf9.fsf@gmail.com> <83va84cuf6.fsf@gnu.org> <87k0doi6vy.fsf@gnus.org> <905557ed-58f6-8671-51de-a44e73029aa9@cs.ucla.edu> <87ley15pp6.fsf@gnus.org> <172175b8-c6b3-314f-e803-e00d04f5d57a@cs.ucla.edu> <87y221436n.fsf@gnus.org> <0df255b3-41a1-619d-97d3-28fd246e0b9f@cs.ucla.edu> <87pmnc4p64.fsf@gnus.org> <87v8x3znmm.fsf@gnus.org> <6f364184-7fa8-04f3-44a9-22ce40b872e8@cs.ucla.edu> <8735k5vezs.fsf@gnus.org> <83ee3pprkr.fsf@gnu.org> <87pmn9txzo.fsf@gnus.org> <87ee3ns6x0.fsf@gnus.org> <78c5037a-ac96-e7be-532f-b1776ed25b2b@cs.ucla.edu> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10689"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: 32452@debbugs.gnu.org, bug-gnulib@gnu.org, npostavs@gmail.com To: Paul Eggert Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Mar 01 16:37:13 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1nP4Yr-0002bj-Qw for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 01 Mar 2022 16:37:13 +0100 Original-Received: from localhost ([::1]:35834 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nP4Yq-0001aP-Ph for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 01 Mar 2022 10:37:12 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:40612) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nP4Yg-0001Zz-8D for bug-gnu-emacs@gnu.org; Tue, 01 Mar 2022 10:37:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:44115) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nP4Yf-0001UD-Ve for bug-gnu-emacs@gnu.org; Tue, 01 Mar 2022 10:37:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nP4Yf-0006CY-Mi for bug-gnu-emacs@gnu.org; Tue, 01 Mar 2022 10:37:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 01 Mar 2022 15:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 32452 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: moreinfo Original-Received: via spool by 32452-submit@debbugs.gnu.org id=B32452.164614897623749 (code B ref 32452); Tue, 01 Mar 2022 15:37:01 +0000 Original-Received: (at 32452) by debbugs.gnu.org; 1 Mar 2022 15:36:16 +0000 Original-Received: from localhost ([127.0.0.1]:38009 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nP4Xw-0006Az-0V for submit@debbugs.gnu.org; Tue, 01 Mar 2022 10:36:16 -0500 Original-Received: from quimby.gnus.org ([95.216.78.240]:49118) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nP4Xu-0006Af-8H for 32452@debbugs.gnu.org; Tue, 01 Mar 2022 10:36:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=xGT1CY6Db/2/7j2MOWi8rK3zNHHtmTbhUC9XTAAFUOo=; b=oj3k+nz0EJ6cl2xHZAXxhVvhgm BUZq3KAIIlLaJE1JVUZnDDv1DQaDl9s5mkU5eR9IQt2y74Trwn8HoFTjkpvXnt1PycADxi18yCTz1 8KS71SK+ftbPx2+y7Nn6puD7Jm4CqhBGmKdRHRb+dtmCws5hi66ZvJnXOAP+Yd4cpxxs=; Original-Received: from [84.212.220.105] (helo=giant) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nP4Xk-0007fn-2c; Tue, 01 Mar 2022 16:36:06 +0100 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAElBMVEVTW2R6foE2P0ic pK4cIyn///9GHbZRAAAAAWJLR0QF+G/pxwAAAAlwSFlzAAAewgAAHsIBbtB1PgAAAAd0SU1FB+YD AQ8JJBVIVy8AAAGgSURBVDjLhZQBkqQgDEU/cQ4A7QVSGQ7QjnuAXYr7n2l/Ajh211RNbEvN4/8E lEbK8AMKwLLBlCdQ8BbqWeZ3ICHl8sB2HPtxPktWKSkNQSrlmdN5nkcJ1xWFsR+HX+6mZqIvz3FE PFIRQDRB1WY0siReKrm3KtoklFYT4U8M6iPHScKUcPSopK3ZxPDBIrV3+nhuerVQBLCo3RYBS1DU OiWmNwm6A2uUhH0n8IOgmrcFB+HE4H0n6G5F0KMoc858ZJ2KBYLNhGi+AT8DUKLVgYb/iGXRo1+/ ad/ASR3gVRFkXK78BNU0vNp3kQXqeGwxkR8ASR/kHdhyewM6y7cJ3nqJO/PFBZbC31bzxY+ZcxHn OI13ZXMRf4wJ7DfQ6uvM+5qG3BSlZMZ6TGmLSOjINyD7vu0eJ6JbWRaP+LLZtKKP72tZYWyCmOAd dN+1Y3/4Ct6AJ+vVbrsAv5u6+vNNWVZXf2PzCU3AzhhfE/zjPTeecRelAH+WgptdppXnz49VnAAy /hYCXEtE/f7Ynuc5wPMCm0uAPQ/JBepnFEfJ/wEvdsKLrmplhQAAACV0RVh0ZGF0ZTpjcmVhdGUA MjAyMi0wMy0wMVQxNTowOTozNiswMDowML6Y8zwAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDMt MDFUMTU6MDk6MzYrMDA6MDDPxUuAAAAAAElFTkSuQmCC X-Now-Playing: Neil Young's _After The Gold Rush_: "When You Dance You Can Really Love" In-Reply-To: <78c5037a-ac96-e7be-532f-b1776ed25b2b@cs.ucla.edu> (Paul Eggert's message of "Mon, 28 Feb 2022 13:47:03 -0800") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:227873 Archived-At: Paul Eggert writes: > Evidently my recent workarounds in Emacs to handle running gnulib-tool > from a bare checkout were not sufficient. I installed the attached > patch to up the ante; please give it a try. > > It is unfortunate that emacs/admin/merge-gnulib now runs gnulib-tool > twice from a bare checkout, as gnulib-tool is quite slow. My latest attempt wasn't from a bare checkout -- it was from my normal development tree, though. In any case, doing this: diff --git a/admin/merge-gnulib b/admin/merge-gnulib index 7219fadd47..074101f095 100755 --- a/admin/merge-gnulib +++ b/admin/merge-gnulib @@ -40,7 +40,7 @@ GNULIB_MODULES= getloadavg getopt-gnu getrandom gettime gettimeofday gitlog-to-changelog ieee754-h ignore-value intprops largefile libgmp lstat manywarnings memmem-simple mempcpy memrchr minmax mkostemp mktime - nproc nstrftime + nanosleep nproc nstrftime pathmax pipe2 pselect pthread_sigmask qcopy-acl readlink readlinkat regex sig2str sigdescr_np socklen stat-time std-gnu11 stdalign stddef stdio Then running admin/merge-gnulib, and then adding this: diff --git a/src/gnutls.c b/src/gnutls.c index 3ec3837067..5389b15b1e 100644 --- a/src/gnutls.c +++ b/src/gnutls.c @@ -616,6 +616,7 @@ gnutls_try_handshake (struct Lisp_Process *proc) gnutls_session_t state = proc->gnutls_state; int ret; bool non_blocking = proc->is_non_blocking_client; + struct timespec delay = { 0, 1000 * 1000 * 10 }; if (proc->gnutls_complete_negotiation_p) non_blocking = false; @@ -630,6 +631,7 @@ gnutls_try_handshake (struct Lisp_Process *proc) maybe_quit (); if (non_blocking && ret != GNUTLS_E_INTERRUPTED) break; + nanosleep (&delay, NULL); } proc->gnutls_initstage = GNUTLS_STAGE_HANDSHAKE_TRIED; Still leads to: /usr/bin/ld: gnutls.o: in function `gnutls_try_handshake': /home/larsi/src/emacs/gtest/src/gnutls.c:634: undefined reference to `rpl_nanosleep' collect2: error: ld returned 1 exit status Are there any further incantations needed to use stuff from gnulib? I tried to compare with other usages of gnulib stuff, and nothing really stood out immediately. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no