Received: (at 81731) by debbugs.gnu.org; 29 Aug 2026 11:25:16 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 29 07:25:15 2026 Received: from localhost ([127.0.0.1]:55130 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1x0HBR-0005eQ-Re for submit <at> debbugs.gnu.org; Sat, 29 Aug 2026 07:25:15 -0400 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]:59488) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <jacekswierk@HIDDEN>) id 1x0HBP-0005dG-40 for 81731 <at> debbugs.gnu.org; Sat, 29 Aug 2026 07:25:11 -0400 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-482e4998d28so1290008f8f.2 for <81731 <at> debbugs.gnu.org>; Sat, 29 Aug 2026 04:25:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1788002705; x=1788607505; darn=debbugs.gnu.org; h=content-transfer-encoding:content-type:in-reply-to:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=vjTDJnaguPuFmX6yLeSiZASeDdnaO5jMGnWRAJAGAbQ=; b=ROBHvE5YPE0J6dFDiRhMyphM8VsikeJJ64q8BY2Xwzoaad1u9d6hR3+XM4WaOiD9Vg jdHivz/5E3X0HGnfkDCOAYUuO1YPVEKQZ6SCkxdPqPIdRaUSwY2lHqwOk8PDoz3uAbmN 4aq7+eAwgWGveYKbpirykOe1FXnthrU/WL7VZ0wpJRlbfbt0a0Tkn+tFf2DWe+Ty2pLF E4InOmcn1NpTY37k6znxrUBLyghlqUmpffVhe45ZiGZDaSRMQt48wwo6Juu9nk3zH+Pr hPV89g721NHE+tZbSOmAkDA7q5EJvX05wR7HZ9rfVcKlVYdxHE35Ncf4su/pBWW3PyS8 SfiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788002705; x=1788607505; h=content-transfer-encoding:content-type:in-reply-to:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to:content-type; bh=vjTDJnaguPuFmX6yLeSiZASeDdnaO5jMGnWRAJAGAbQ=; b=L8DTUwUAK5XOb5lU7aBpaxwY7JKKnMNayXQItQA8JcTw9HAkCDDNGKjH+/3Y6hcGaV szjx0ahZUkuKBqYomBxYEUWIzw5ldAHnMAWM25R5V5JjzXcZUXvXFgUlqVzAgI3/Stzv c7J6TKuH5o5l1whs8vb/hL9jY4uS7o2Q6iGXqNOufWeUOk5vppI03xY3CvSpPGb0MGAp LmecdvPTIPoX3S0Qubd0/gz8ZYJ6ROrQ6io82ygEd/E7nom1qk3jk0ac/I+yP18yvAu5 iaB7UWXPsZPzoq4xx3YdeP0GFem+CgHBPjKBqbibsX3QZAV0neOnylc8CTOXhBY9OGAf ldRw== X-Forwarded-Encrypted: i=1; AKwUvByBaKyaOWmeGGY0bEN7Z3jI5mmDYEfbKPKx2EUGGZ7S4rtnkgByecL6WcWP/gNCOLWJrAfUeg==@debbugs.gnu.org X-Gm-Message-State: AFuF++khBTFLn3Hdk3gyQPAp71YF/k9mdhdMRDoDvGRB05DoFwvq3vXu etJ4WWoLRiX/E3zofWb/ajmtUq+xz8NiiC/4on6algH1DV/9VZixVEGkWZp7nwrf X-Gm-Gg: AYBFou3jOFOC/V6C6wtdipBmIzIvBFT7smcWg8QLiQdmFXsKHoeBdF7PQkwEPcMlxX/ g7q+qAFKrxBN7cDoQWQssxgOeyVpaixAMW2nFQNA33wHqKkRTUfBL1oCrQi6pEsYD3ezWutdgM+ bWzd7iHMaxgTFCvV+J/OVQExkIkcQu5Z05d+saQYXXsyNgbZBH8qHFlcdZ5Z/11047EInMAmrcu cm8QHk5j4yd9DjjnbBdKw7b9+TM2lAL1bLf6dhxWOKTNx4caPHaqEdjD977dK77qBBBUC7hUh8Y XTLF4TDAT4c3j1pSvtxw1RHJrXnUYlAW/yl0rJOX1Bg+3tUtBnv9yFW11wfnIELe0mZICb3E/iO eDJcedOHgv7u4H+zUGsWeadmxe8W6LiV+068fpdC6wNTI4TUtdSHlIXDQE2REWSyfm9bI2m4Hq9 Nsl7Pwbsk/U00hOnIK3PaqxAZGPENaJzgLMAgkvfSsRG6mjiIjWjYkeUX44Og/Qzb52nYZOQNEi qWLZmvix8Pj8rLJ3yPA2c56iA9CSK7kCjBnledfnoGP6/HtR7jdp+k08V6mbcJw+BvdPlOPQg== X-Received: by 2002:a05:6000:2582:b0:482:c676:8d04 with SMTP id ffacd0b85a97d-482f79f583fmr17857316f8f.18.1788002704575; Sat, 29 Aug 2026 04:25:04 -0700 (PDT) Received: from ?IPV6:2a02:a31b:20a0:4780:2053:72bc:f7ed:af12? ([2a02:a31b:20a0:4780:2053:72bc:f7ed:af12]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4843310ab41sm2242639f8f.7.2026.08.29.04.25.03 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 29 Aug 2026 04:25:04 -0700 (PDT) From: "=?UTF-8?Q?Jacek_=C5=9Awierk?=" <jacekswierk@HIDDEN> X-Google-Original-From: =?UTF-8?Q?Jacek_=C5=9Awierk?= <jacek.swierk@HIDDEN> Message-ID: <16742879-def0-46ad-8249-e05b600ee261@HIDDEN> Date: Sat, 29 Aug 2026 13:25:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#81731: 32.0.50; registering many file watches is extremely slow To: Michael Albinus <michael.albinus@HIDDEN>, =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN> References: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN> <86o6elcvj6.fsf@HIDDEN> <CALDnm52E-4QrTqPYcrt9yg-G-ENpbD0in2t4KZ0vfdVrjG3E2w@HIDDEN> <8733vxdw5m.fsf@HIDDEN> Content-Language: en-US In-Reply-To: <8733vxdw5m.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 81731 Cc: Eli Zaretskii <eliz@HIDDEN>, 81731 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.0 (/) I don't know the detailed flow of messages between Eglot and the LSP server. It registers file watches twice, so I suspect the second registration is a form of re-registration that causes Emacs to remove the existing watches by calling file-notify-rm-watch. That function, specifically line 498, is the most likely culprit. This would explain why the initial registration is still fast enough. The following commands, run from an Emacs master checkout, confirm this: mkdir -p /tmp/emacs-test1 emacs -Q --batch -L lisp --eval '(progn (load (expand-file-name "lisp/filenotify.el" default-directory) nil t) (let* ((root (make-temp-file "/tmp/emacs-test1/filenotify-bench-" t)) (count 1000) descriptors started) (unwind-protect (progn (dotimes (i count) (let ((dir (expand-file-name (number-to-string i) root))) (make-directory dir) (push (file-notify-add-watch dir (quote (change)) (function ignore)) descriptors))) (setq started (float-time)) (mapc (function file-notify-rm-watch) descriptors) (princ (format "removed=%d elapsed=%.3fs per-watch=%.3fms\n" count (- (float-time) started) (/ (* 1000.0 (- (float-time) started)) count)))) (delete-directory root t))))' mkdir -p /tmp/emacs-test2 git worktree add --detach "/tmp/emacs-parent" 07925d707000288e933ea8239e8c3c7189efb899^ emacs -Q --batch -L "/tmp/emacs-parent/lisp" --eval '(progn (load "/tmp/emacs-parent/lisp/filenotify.el" nil t) (let* ((root (make-temp-file "/tmp/emacs-test2/filenotify-bench-" t)) (count 100) descriptors started) (unwind-protect (progn (dotimes (i count) (let ((dir (expand-file-name (number-to-string i) root))) (make-directory dir) (push (file-notify-add-watch dir (quote (change)) (function ignore)) descriptors))) (setq started (float-time)) (mapc (function file-notify-rm-watch) descriptors) (princ (format "removed=%d elapsed=%.3fs per-watch=%.3fms\n" count (- (float-time) started) (/ (* 1000.0 (- (float-time) started)) count)))) (delete-directory root t))))' git worktree remove --force "/tmp/emacs-parent"
bug-gnu-emacs@HIDDEN:bug#81731; Package emacs.
Full text available.Received: (at 81731) by debbugs.gnu.org; 29 Aug 2026 11:05:38 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 29 07:05:38 2026 Received: from localhost ([127.0.0.1]:55049 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1x0GsT-00037I-By for submit <at> debbugs.gnu.org; Sat, 29 Aug 2026 07:05:38 -0400 Received: from mout.gmx.net ([212.227.15.19]:49993) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>) id 1x0GsP-00032G-LA for 81731 <at> debbugs.gnu.org; Sat, 29 Aug 2026 07:05:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1788001526; x=1788606326; i=michael.albinus@HIDDEN; bh=1bO0VRzAGRWQrV6o2bhRDiQj057WD6EjwIK6K5NBjQk=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date: Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=JHbTAIbmsR94U2n18UThnF2O43vuJeHgrqNjAWDJMmCLRn00k6BmcAQaSBTh8Zf1 mgPpc6MIfBMTJAGZE62ONN9oKR/0AiKq3MV3zL58jZ5OAwijqklktJa/M7DpUaYF0 hZ7pk3camvvei/isiWBNuGq9+yglvARnjcDukmmC/+15WVwqV++yV2tEJDUQfEpOL GWtwhYQ0EmT/HLzT12M+Do+F3lGd3K1znpEQJvGyYcvABFxNMhyGNHy1PjzDFfcda USrwEeqbO3TmTuL4KPQCRwnaDwwIG/E/+wwS5J0idGYDZK9AsiZyucoEPy3P9eLUl p/HAQPcoEn1Z7yOtLw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from client.hidden.invalid by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MY6Cl-1xPqjD33Mr-00Sa7n; Sat, 29 Aug 2026 13:05:26 +0200 From: Michael Albinus <michael.albinus@HIDDEN> To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN> Subject: Re: bug#81731: 32.0.50; registering many file watches is extremely slow In-Reply-To: <CALDnm52E-4QrTqPYcrt9yg-G-ENpbD0in2t4KZ0vfdVrjG3E2w@HIDDEN> References: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN> <86o6elcvj6.fsf@HIDDEN> <CALDnm52E-4QrTqPYcrt9yg-G-ENpbD0in2t4KZ0vfdVrjG3E2w@HIDDEN> Date: Sat, 29 Aug 2026 13:05:25 +0200 Message-ID: <8733vxdw5m.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:G7alDo+rpeEYeoBpXt5rubc0JEYlX9909ZBUE54YKuumhDD7+fC SKArWK5y2RHKe5x4dlXuwInfxqv3cn0FoOGesVax0IewTtOumBux+64H7t6M2Ntd+1Wavce InX62Cwv6go141aB/9fYjJvuk9/zSmvJYsnVITFhXix80KXY5eb2WVgYB9Dmy81Dy6VaVk+ JwpIB+Ew+V+Nnc5FGCiig== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:ur7vO0+UmAA=;PNmwz4W18mjc/5xR7GqUYUjoyKa +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 = X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 81731 Cc: Eli Zaretskii <eliz@HIDDEN>, 81731 <at> debbugs.gnu.org, Jacek =?utf-8?Q?=C5=9Awierk?= <jacekswierk@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Jo=C3=A3o T=C3=A1vora <joaotavora@HIDDEN> writes: > We already discussed this as a hypothetical in emacs-devel and now > it's not a hypothetical. Michael, you know what to do.=20 I'm already working on the recipe. > Jo=C3=A3o Best regards, Michael.
bug-gnu-emacs@HIDDEN:bug#81731; Package emacs.
Full text available.
Received: (at 81731) by debbugs.gnu.org; 29 Aug 2026 10:36:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 29 06:36:18 2026
Received: from localhost ([127.0.0.1]:54969 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1x0GQ4-00083X-PD
for submit <at> debbugs.gnu.org; Sat, 29 Aug 2026 06:36:18 -0400
Received: from mail-oa1-x33.google.com ([2001:4860:4864:20::33]:46128)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <joaotavora@HIDDEN>)
id 1x0GQ2-00083F-B7
for 81731 <at> debbugs.gnu.org; Sat, 29 Aug 2026 06:36:15 -0400
Received: by mail-oa1-x33.google.com with SMTP id
586e51a60fabf-45837e52d8aso2017375fac.0
for <81731 <at> debbugs.gnu.org>; Sat, 29 Aug 2026 03:36:14 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1787999768; cv=none;
d=google.com; s=arc-20260327;
b=oV9dHPVExR9uSByQhoDYQgSAmaeYGJoddMckih6pRmy2D2MDm+I9BHLG7y028riano
1kdEKYcUnoyzeX5oQQ5H9PiGkn3kNyyqPpRev8+OmFc4ah9cvGn7wrg8SOQOja3FG20i
ASWJtLTiDjamkRW8DWddoAlPydofbunkr2CQsdtSFUINqDwnTuhB42qjn/C63TI2t0Ph
1MeqFPWSVIXUsYeeItIN0sco8NXEywfsuRzHg3SwqQ2bk355XMZc8OsfTuqpU/D+dUcY
KxwU1x+i+pE2ST1HAAVXRM6XDaLaK5L45E4sGcmoLHF5ffMvBdB4iDluyusBDHbG1Ax4
9+oQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
s=arc-20260327;
h=cc:to:subject:message-id:date:from:in-reply-to:references
:mime-version:dkim-signature;
bh=w6Zb2nDqE8IgrTICzdsgUReThwxX7gJrDiSGB/2NgU0=;
fh=mK/VKNaO+RjyDOtnIND4cjt6LaSF5GMlN2+7/NC1nlc=;
b=BAH/lGk9LNrj4NcoGjkWrJanDmM+smAJnSRv5CO7shtbZJwNuXX172ZqBxOq2dAiCM
e1zl/+XudopJ1N7HZw2suDUwHQsgw6tuyXZj6rWPbv+r63k7iYOVNZxSBOqAIHjNTc09
l2EmjiOcDsM4nxm/s7ZxXJgNHmaIBykFKsbSjcaCVYnM5gN78tahEBlvooOKiklGXUrZ
4Gd4v8tIgh4K3auAXlLZsP5PRaClZX2sTrAWxd/4RjgR+cmQA9PWlcEjH/cMGqiVLmEW
NP0k6dpDPTudYxAh+tDAbDtZAI7bWr254E3ZLyQpwBMv7XKYjlQ5i/JAUzdwPfjXPpOS
MmqQ==; darn=debbugs.gnu.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20251104; t=1787999768; x=1788604568; darn=debbugs.gnu.org;
h=content-type:cc:to:subject:message-id:date:from:in-reply-to
:references:mime-version:from:to:cc:subject:date:message-id:reply-to
:content-type; bh=w6Zb2nDqE8IgrTICzdsgUReThwxX7gJrDiSGB/2NgU0=;
b=YcsnFt+NyDxcOejsmB56aUfUXySHVTHL7UPUcTWVobpSQKd5CZZAEIxbRNq+pr2PEq
HwwjFPe0EyYiu/QCv9s1UbLi3PsjWHjwaX1n7lPBCfPoPeZnmhh7zMP4ctmuRDBAnzAq
V3vGG3PCEwB4yfxR2IrdZT4KpArsHr/jitaSC3O/FJ2NR9Eiam5czQf7Xbb/Jqg+fy09
vDvRob3nh9lwIsuIfN12itGzeZt11qd0GibB9ZcWb2Am8hpB0n7Orm3vSNK7GPyZ0V2N
1fhElaQl56YG1TV07VnEm5sKxPhvIzeiLnxDjuPjFz6SpYpt2/c01nlt7ulcA4Py2i8D
tXhQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20251104; t=1787999768; x=1788604568;
h=content-type:cc:to:subject:message-id:date:from:in-reply-to
:references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc
:subject:date:message-id:reply-to:content-type;
bh=w6Zb2nDqE8IgrTICzdsgUReThwxX7gJrDiSGB/2NgU0=;
b=SfJ+w9G3pVZALCwnOtPQpf3bT1E7qzfLmjwmXmXmWE3pibr+0u/51VYbavv/ghqwg9
Okq6063UxYqg7ekdCuCpN97LcmLUhwzyBoa1q+psSY8NUGQLQTjVhkp9/1SSFcTLUjhk
33tEOUJ3FU4bt8HCYT9XgcyP6fbyx7AfqS25pMS5K5Gx3NcS23jU82YyR1OETR5sxim/
iz9mF3vv8eYZS3kVmaTuqcne5vxotneim10QspILQHaY7npIfjhW/M9bHuDjoZDQ4odM
5vJUEOxmVk92uwFhDRPsG/Q+STTvnboPM9ED8zftL5S2xq36vlg+YR1K/ba2bWDlq3Mu
lNYg==
X-Forwarded-Encrypted: i=1;
AHgh+RolejVg6n87/m3vWnoPB1YJzY3ffAP4kJ8IOZwk8ucsbv5jXNbBft4AnYG0fYzufWFzy3jhOQ==@debbugs.gnu.org
X-Gm-Message-State: AFuF++nGywyT21Zn8qcrahquGWT0gvCcecai6EVZ7VevgIZltbBA398G
3xLAXJ3G+kiQk6OpxmRPTVD99jDMA1T309AWtK1zbveMc5wQFUlDsmzgq7uM1S5VFqi57MaA7U5
yzjNHlEGTN/Wl8/YOwK1pf9v6oZlnUdM=
X-Gm-Gg: AYBFou1UcDT8LnUN470qxe5bze4jBb/hMYKYynhXCnfdRCuoGM6haAXJra5pUBelhwo
RccR8+R6x/kOOmqMgkE862C0CSqNBbqKXCeos+bDWo6x99KeJWjaZPNxfstAw69eN8AFhN7ul2V
WllmuWCyVFfEFwJeD20AOqFrGBsqvdTkMyCKNIHOfWgEeInEVAMAz4NnbeTrPIbPFR6l+hC6NXh
uGAYIv8/dWcmRify+WU5p3bqFX2zHaLzp1b3LXlKvrlAEmMkTjKhK5+8MQPRjS0PVn4xxufzx0A
zzN3EC1Zi+llqKpBPD92stIk1QfN9DfvUH5EcoWGAmY9LR9moTuWF4zsENy21j8LtRU6ZzIr3A0
JtN/BXV6JKuRae36ZGop7+mo6mDEOpw==
X-Received: by 2002:a05:6870:340c:b0:43a:19fb:8b99 with SMTP id
586e51a60fabf-46837235286mr14905775fac.9.1787999768353; Sat, 29 Aug 2026
03:36:08 -0700 (PDT)
MIME-Version: 1.0
References: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN>
<86o6elcvj6.fsf@HIDDEN>
In-Reply-To: <86o6elcvj6.fsf@HIDDEN>
From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>
Date: Sat, 29 Aug 2026 10:35:57 +0000
X-Gm-Features: AcwNN1VAVsDteK7wUF36YrY8jCAiKcgxL2BQrz8Pf2N5Aqty9TE7RQI4NpMjeDA
Message-ID: <CALDnm52E-4QrTqPYcrt9yg-G-ENpbD0in2t4KZ0vfdVrjG3E2w@HIDDEN>
Subject: Re: bug#81731: 32.0.50;
registering many file watches is extremely slow
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000000d1e57065a2d232c"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 81731
Cc: 81731 <at> debbugs.gnu.org, Michael Albinus <michael.albinus@HIDDEN>,
=?UTF-8?Q?Jacek_=C5=9Awierk?= <jacekswierk@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)
--0000000000000d1e57065a2d232c
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
We already discussed this as a hypothetical in emacs-devel and now it's not
a hypothetical. Michael, you know what to do.
Jo=C3=A3o
Jo=C3=A3o
On Sat, Aug 29, 2026, 06:04 Eli Zaretskii <eliz@HIDDEN> wrote:
> > From: "Jacek =C5=9Awierk" <jacekswierk@HIDDEN>
> > Date: Fri, 28 Aug 2026 21:44:34 +0200
> >
> > Eglot uses filenotify to install watches for subdirectories matching
> > glob patterns dynamically registered by an LSP server. Commit
> > 07925d707000288e933ea8239e8c3c7189efb899 appears to have introduced a
> > significant performance regression. In repositories containing many
> > matching subdirectories, Eglot can block Emacs for tens of seconds whil=
e
> > registering the requested watches. During this time, the UI is
> > effectively unresponsive.
> >
> > This example uses rust-analyzer, because clangd does not appear to
> > dynamically register file watchers.
> >
> > 1. cargo new foo
> > 2. cd foo
> > 3. Generate a lot of subdirectories:
> > for i in $(seq -w 0 1000); do
> > mkdir "src/mod_$i"
> > touch "src/mod_$i/lib.rs"
> > done
> > 4. emacs -Q src/main.rs
> > 5. M-x eglot
> >
> > Emacs becomes unresponsive for many seconds while Eglot installs
> > approximately 2,000 inotify watches.
> >
> > After initialization completes, M-x eglot-describe-connection reports:
> >
> > File watchers
> > workspace/didChangeWatchedFiles -> 2006 watchers
> >
> > As a possibly unrelated issue, this number appears to be twice the
> > expected number of watches.
> >
> > The Eglot events buffer shows an initial registration completing
> > quickly:
> >
> > [jsonrpc] e[20:22:47.857] <-- client/registerCapability[2]
> >
> {"jsonrpc":"2.0","id":2,"method":"client/registerCapability","params":{"r=
egistrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/=
didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"fil=
e:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":=
"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/=
.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> > [jsonrpc] e[20:22:48.003] --> client/registerCapability[2]
> > {"jsonrpc":"2.0","id":2,"result":null}
> >
> > A subsequent registration of the same capabilities takes almost a
> > minute:
> >
> > [jsonrpc] e[20:22:48.072] <-- client/registerCapability[7]
> >
> {"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"r=
egistrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/=
didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"fil=
e:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":=
"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/=
.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> > [jsonrpc] e[20:23:39.573] --> client/registerCapability[7]
> > {"jsonrpc":"2.0","id":7,"result":null}
> >
> > Before commit 07925d707000288e933ea8239e8c3c7189efb899, the same
> > registration completed in approximately 100 ms:
> >
> > [jsonrpc] e[20:33:52.197] <-- client/registerCapability[7]
> >
> {"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"r=
egistrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/=
didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"fil=
e:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":=
"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"base=
Uri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/=
.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> > [jsonrpc] e[20:33:52.297] --> client/registerCapability[7]
> > {"jsonrpc":"2.0","id":7,"result":null}
>
> Thanks, I've added Jo=C3=A3o and Michael to this discussion.
>
> > In GNU Emacs 32.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
> > 3.24.52, cairo version 1.18.4) of 2026-08-25 built on arch
> > Repository revision: 60d0df24d323867da7a834bfebaed2078b03c3f4
> > Repository branch: master
> > System Description: Arch Linux
> >
> > Configured using:
> > 'configure --prefix=3D/usr --sysconfdir=3D/etc --libexecdir=3D/usr/lib
> > --localstatedir=3D/var --mandir=3D/usr/share/man --with-gameuser=3D:gam=
es
> > --with-modules --without-m17n-flt --without-gconf
> > --with-native-compilation=3Dyes --with-native-compilation=3Daot
> > --with-xinput2 --with-pgtk --without-xaw3d --with-sound=3Dno
> > --with-tree-sitter --without-gpm --without-compress-install
> > 'CFLAGS=3D-march=3Dnative -O2 -pipe -fno-plt -fexceptions
> > -Wp,-D_FORTIFY_SOURCE=3D3 -Wformat -Werror=3Dformat-security
> > -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer
> > -mno-omit-leaf-frame-pointer' 'LDFLAGS=3D-Wl,-O1 -Wl,--sort-common
> > -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs
> > -fuse-ld=3Dmold''
> >
> > Configured features:
> > ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
> > LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY
> > PDUMPER PGTK PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
> > TREE_SITTER WEBP XIM GTK3 ZLIB
> >
> > Important settings:
> > value of $LC_MESSAGES: en_US.UTF-8
> > value of $LANG: en_US.UTF-8
> > value of $XMODIFIERS: im=3Dfcit
> > locale-coding-system: utf-8-unix
> >
> > Major mode: Lisp Interaction
> >
> > Minor modes in effect:
> > tooltip-mode: t
> > global-eldoc-mode: t
> > eldoc-mode: t
> > show-paren-mode: t
> > electric-indent-mode: t
> > mouse-wheel-mode: t
> > tool-bar-mode: t
> > menu-bar-mode: t
> > file-name-shadow-mode: t
> > global-font-lock-mode: t
> > font-lock-mode: t
> > blink-cursor-mode: t
> > minibuffer-nonselected-mode: t
> > minibuffer-regexp-mode: t
> > line-number-mode: t
> > indent-tabs-mode: t
> > transient-mark-mode: t
> > auto-composition-mode: t
> > auto-encryption-mode: t
> > auto-compression-mode: t
> >
> > Load-path shadows:
> > None found.
> >
> > Features:
> > (shadow sort mail-extr comp-run bytecomp byte-compile comp-common rx
> > emacsbug lisp-mnt message mailcap yank-media puny dired dired-loaddefs
> > rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config
> > gnus-util text-property-search time-date subr-x mule-util mm-decode
> > mm-bodies mm-encode mailabbrev gmm-utils mailheader cl-loaddefs cl-lib
> > sendmail mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util
> > mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electric
> > uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
> > term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar
> > dnd fontset image regexp-opt fringe tabulated-list replace newcomment
> > text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshado=
w
> > isearch easymenu timer select scroll-bar mouse jit-lock font-lock synta=
x
> > font-core term/tty-colors frame minibuffer nadvice seq simple cl-generi=
c
> > indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
> > tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
> > romanian slovak czech european ethiopic indian cyrillic chinese
> > composite emoji-zwj charscript charprop case-table epa-hook
> > jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
> > theme-loaddefs faces cus-face macroexp files window text-properties
> > overlay sha1 md5 base64 format env code-pages mule custom widget keymap
> > hashtable-print-readable backquote threads dbusbind inotify
> > dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
> > lcms2 multi-tty move-toolbar make-network-process tty-child-frames
> > native-compile emacs)
> >
> > Memory information:
> > ((conses 16 56594 8946) (symbols 48 6213 0) (strings 32 15044 1231)
> > (string-bytes 1 527368) (vectors 16 9794)
> > (vector-slots 8 140737 8363) (floats 8 22 2) (intervals 56 279 0)
> > (buffers 1064 10))
> >
> >
> >
> >
>
--0000000000000d1e57065a2d232c
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"auto"><div>We already discussed this as a hypothetical in emacs=
-devel and now it's not a hypothetical. Michael, you know what to do.=
=C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">Jo=C3=A3o</div><d=
iv><br></div><div data-smartmail=3D"gmail_signature">Jo=C3=A3o</div></div><=
br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" class=
=3D"gmail_attr">On Sat, Aug 29, 2026, 06:04 Eli Zaretskii <<a href=3D"ma=
ilto:eliz@HIDDEN">eliz@HIDDEN</a>> wrote:<br></div><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg=
b(204,204,204);padding-left:1ex">> From: "Jacek =C5=9Awierk" &=
lt;<a href=3D"mailto:jacekswierk@HIDDEN" target=3D"_blank" rel=3D"norefe=
rrer">jacekswierk@HIDDEN</a>><br>
> Date: Fri, 28 Aug 2026 21:44:34 +0200<br>
> <br>
> Eglot uses filenotify to install watches for subdirectories matching<b=
r>
> glob patterns dynamically registered by an LSP server. Commit<br>
> 07925d707000288e933ea8239e8c3c7189efb899 appears to have introduced a<=
br>
> significant performance regression. In repositories containing many<br=
>
> matching subdirectories, Eglot can block Emacs for tens of seconds whi=
le<br>
> registering the requested watches. During this time, the UI is<br>
> effectively unresponsive.<br>
> <br>
> This example uses rust-analyzer, because clangd does not appear to<br>
> dynamically register file watchers.<br>
> <br>
> 1. cargo new foo<br>
> 2. cd foo<br>
> 3. Generate a lot of subdirectories:<br>
> for i in $(seq -w 0 1000); do<br>
> mkdir "src/mod_$i"<br>
> touch "src/mod_$i/lib.rs"<br>
> done<br>
> 4. emacs -Q src/main.rs<br>
> 5. M-x eglot<br>
> <br>
> Emacs becomes unresponsive for many seconds while Eglot installs<br>
> approximately 2,000 inotify watches.<br>
> <br>
> After initialization completes, M-x eglot-describe-connection reports:=
<br>
> <br>
> File watchers<br>
>=C2=A0 =C2=A0 workspace/didChangeWatchedFiles -> 2006 watchers<br>
> <br>
> As a possibly unrelated issue, this number appears to be twice the<br>
> expected number of watches.<br>
> <br>
> The Eglot events buffer shows an initial registration completing<br>
> quickly:<br>
> <br>
> [jsonrpc] e[20:22:47.857] <-- client/registerCapability[2] <br>
> {"jsonrpc":"2.0","id":2,"method&quo=
t;:"client/registerCapability","params":{"registra=
tions":[{"id":"workspace/didChangeWatchedFiles",&q=
uot;method":"workspace/didChangeWatchedFiles","register=
Options":{"watchers":[{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.rs"=
}},{"globPattern":{"baseUri":"file:///tmp/foo"=
;,"pattern":"**/Cargo.{lock,toml}"}},{"globPattern=
":{"baseUri":"file:///tmp/foo","pattern"=
:"**/rust-analyzer.toml"}},{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.md"=
}},{"globPattern":"/home/jswierk/.config/rust-analyzer"=
},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}<br>
> [jsonrpc] e[20:22:48.003] --> client/registerCapability[2] <br>
> {"jsonrpc":"2.0","id":2,"result&quo=
t;:null}<br>
> <br>
> A subsequent registration of the same capabilities takes almost a<br>
> minute:<br>
> <br>
> [jsonrpc] e[20:22:48.072] <-- client/registerCapability[7] <br>
> {"jsonrpc":"2.0","id":7,"method&quo=
t;:"client/registerCapability","params":{"registra=
tions":[{"id":"workspace/didChangeWatchedFiles",&q=
uot;method":"workspace/didChangeWatchedFiles","register=
Options":{"watchers":[{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.rs"=
}},{"globPattern":{"baseUri":"file:///tmp/foo"=
;,"pattern":"**/Cargo.{lock,toml}"}},{"globPattern=
":{"baseUri":"file:///tmp/foo","pattern"=
:"**/rust-analyzer.toml"}},{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.md"=
}},{"globPattern":"/home/jswierk/.config/rust-analyzer"=
},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}<br>
> [jsonrpc] e[20:23:39.573] --> client/registerCapability[7] <br>
> {"jsonrpc":"2.0","id":7,"result&quo=
t;:null}<br>
> <br>
> Before commit 07925d707000288e933ea8239e8c3c7189efb899, the same<br>
> registration completed in approximately 100 ms:<br>
> <br>
> [jsonrpc] e[20:33:52.197] <-- client/registerCapability[7] <br>
> {"jsonrpc":"2.0","id":7,"method&quo=
t;:"client/registerCapability","params":{"registra=
tions":[{"id":"workspace/didChangeWatchedFiles",&q=
uot;method":"workspace/didChangeWatchedFiles","register=
Options":{"watchers":[{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.rs"=
}},{"globPattern":{"baseUri":"file:///tmp/foo"=
;,"pattern":"**/Cargo.{lock,toml}"}},{"globPattern=
":{"baseUri":"file:///tmp/foo","pattern"=
:"**/rust-analyzer.toml"}},{"globPattern":{"baseUr=
i":"file:///tmp/foo","pattern":"**/*.md"=
}},{"globPattern":"/home/jswierk/.config/rust-analyzer"=
},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}<br>
> [jsonrpc] e[20:33:52.297] --> client/registerCapability[7] <br>
> {"jsonrpc":"2.0","id":7,"result&quo=
t;:null}<br>
<br>
Thanks, I've added Jo=C3=A3o and Michael to this discussion.<br>
<br>
> In GNU Emacs 32.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version<br>
> 3.24.52, cairo version 1.18.4) of 2026-08-25 built on arch<br>
> Repository revision: 60d0df24d323867da7a834bfebaed2078b03c3f4<br>
> Repository branch: master<br>
> System Description: Arch Linux<br>
> <br>
> Configured using:<br>
> 'configure --prefix=3D/usr --sysconfdir=3D/etc --libexecdir=3D/usr=
/lib<br>
> --localstatedir=3D/var --mandir=3D/usr/share/man --with-gameuser=3D:ga=
mes<br>
> --with-modules --without-m17n-flt --without-gconf<br>
> --with-native-compilation=3Dyes --with-native-compilation=3Daot<br>
> --with-xinput2 --with-pgtk --without-xaw3d --with-sound=3Dno<br>
> --with-tree-sitter --without-gpm --without-compress-install<br>
> 'CFLAGS=3D-march=3Dnative -O2 -pipe -fno-plt -fexceptions<br>
> -Wp,-D_FORTIFY_SOURCE=3D3 -Wformat -Werror=3Dformat-security<br>
> -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer<br>
> -mno-omit-leaf-frame-pointer' 'LDFLAGS=3D-Wl,-O1 -Wl,--sort-co=
mmon<br>
> -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs<br=
>
> -fuse-ld=3Dmold''<br>
> <br>
> Configured features:<br>
> ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG<br=
>
> LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY<br>
> PDUMPER PGTK PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS=
<br>
> TREE_SITTER WEBP XIM GTK3 ZLIB<br>
> <br>
> Important settings:<br>
> value of $LC_MESSAGES: en_US.UTF-8<br>
> value of $LANG: en_US.UTF-8<br>
> value of $XMODIFIERS: im=3Dfcit<br>
> locale-coding-system: utf-8-unix<br>
> <br>
> Major mode: Lisp Interaction<br>
> <br>
> Minor modes in effect:<br>
> tooltip-mode: t<br>
> global-eldoc-mode: t<br>
> eldoc-mode: t<br>
> show-paren-mode: t<br>
> electric-indent-mode: t<br>
> mouse-wheel-mode: t<br>
> tool-bar-mode: t<br>
> menu-bar-mode: t<br>
> file-name-shadow-mode: t<br>
> global-font-lock-mode: t<br>
> font-lock-mode: t<br>
> blink-cursor-mode: t<br>
> minibuffer-nonselected-mode: t<br>
> minibuffer-regexp-mode: t<br>
> line-number-mode: t<br>
> indent-tabs-mode: t<br>
> transient-mark-mode: t<br>
> auto-composition-mode: t<br>
> auto-encryption-mode: t<br>
> auto-compression-mode: t<br>
> <br>
> Load-path shadows:<br>
> None found.<br>
> <br>
> Features:<br>
> (shadow sort mail-extr comp-run bytecomp byte-compile comp-common rx<b=
r>
> emacsbug lisp-mnt message mailcap yank-media puny dired dired-loaddefs=
<br>
> rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config<b=
r>
> gnus-util text-property-search time-date subr-x mule-util mm-decode<br=
>
> mm-bodies mm-encode mailabbrev gmm-utils mailheader cl-loaddefs cl-lib=
<br>
> sendmail mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util<br>
> mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electri=
c<br>
> uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel<br>
> term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar<=
br>
> dnd fontset image regexp-opt fringe tabulated-list replace newcomment<=
br>
> text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshad=
ow<br>
> isearch easymenu timer select scroll-bar mouse jit-lock font-lock synt=
ax<br>
> font-core term/tty-colors frame minibuffer nadvice seq simple cl-gener=
ic<br>
> indonesian philippine cham georgian utf-8-lang misc-lang vietnamese<br=
>
> tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew gree=
k<br>
> romanian slovak czech european ethiopic indian cyrillic chinese<br>
> composite emoji-zwj charscript charprop case-table epa-hook<br>
> jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddef=
s<br>
> theme-loaddefs faces cus-face macroexp files window text-properties<br=
>
> overlay sha1 md5 base64 format env code-pages mule custom widget keyma=
p<br>
> hashtable-print-readable backquote threads dbusbind inotify<br>
> dynamic-setting system-font-setting font-render-setting cairo gtk pgtk=
<br>
> lcms2 multi-tty move-toolbar make-network-process tty-child-frames<br>
> native-compile emacs)<br>
> <br>
> Memory information:<br>
> ((conses 16 56594 8946) (symbols 48 6213 0) (strings 32 15044 1231)<br=
>
> (string-bytes 1 527368) (vectors 16 9794)<br>
> (vector-slots 8 140737 8363) (floats 8 22 2) (intervals 56 279 0)<br>
> (buffers 1064 10))<br>
> <br>
> <br>
> <br>
> <br>
</blockquote></div>
--0000000000000d1e57065a2d232c--
bug-gnu-emacs@HIDDEN:bug#81731; Package emacs.
Full text available.
Received: (at 81731) by debbugs.gnu.org; 29 Aug 2026 06:04:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Aug 29 02:04:26 2026
Received: from localhost ([127.0.0.1]:54126 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1x0CAz-0001bv-Hp
for submit <at> debbugs.gnu.org; Sat, 29 Aug 2026 02:04:26 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:46586)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1x0CAw-0001ap-Mr
for 81731 <at> debbugs.gnu.org; Sat, 29 Aug 2026 02:04:24 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
id 1x0CAr-0004vi-2g; Sat, 29 Aug 2026 02:04:17 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
Date; bh=PlNeIJpsKr5vmX1S/PbipJFuOtNLz4bwUxr42qw/5Fo=; b=RSWOtxSzvtBvFozWLoIg
treH2W4u9wFzP3IigLyfpqzznnqolSTSdXkQaBRXGWod4ooeQXmdDUnFl2CsKOyfaf27N5JYYky6Q
4Mga54ZZHl05eVzHKdSJUNsToh5vBDDGckFIaEKoFrM8Vagbce7ne3OA0jVPZyogWtcqRc1LL5GpX
31BhTPyDEWensxrYFSJQ/w+Kqryurv9A4EHIHzQMuO95R46r+sCXReZ84dmksaFrIsMUfjK44TpKJ
cfrWZFbN+gALzrQr0aSSWOv99HdnCwLrTrRpY+OlOUNYxplW6VPL9H28C2rD1Zb2Um7UulLjTI6Cd
rp/oDC7DZ77yMw==;
Date: Sat, 29 Aug 2026 09:04:13 +0300
Message-Id: <86o6elcvj6.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: =?utf-8?Q?Jacek_=C5=9Awierk?= <jacekswierk@HIDDEN>,
=?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= <joaotavora@HIDDEN>,
Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN>
(jacekswierk@HIDDEN)
Subject: Re: bug#81731: 32.0.50;
registering many file watches is extremely slow
References: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81731
Cc: 81731 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
> From: "Jacek Świerk" <jacekswierk@HIDDEN>
> Date: Fri, 28 Aug 2026 21:44:34 +0200
>
> Eglot uses filenotify to install watches for subdirectories matching
> glob patterns dynamically registered by an LSP server. Commit
> 07925d707000288e933ea8239e8c3c7189efb899 appears to have introduced a
> significant performance regression. In repositories containing many
> matching subdirectories, Eglot can block Emacs for tens of seconds while
> registering the requested watches. During this time, the UI is
> effectively unresponsive.
>
> This example uses rust-analyzer, because clangd does not appear to
> dynamically register file watchers.
>
> 1. cargo new foo
> 2. cd foo
> 3. Generate a lot of subdirectories:
> for i in $(seq -w 0 1000); do
> mkdir "src/mod_$i"
> touch "src/mod_$i/lib.rs"
> done
> 4. emacs -Q src/main.rs
> 5. M-x eglot
>
> Emacs becomes unresponsive for many seconds while Eglot installs
> approximately 2,000 inotify watches.
>
> After initialization completes, M-x eglot-describe-connection reports:
>
> File watchers
> workspace/didChangeWatchedFiles -> 2006 watchers
>
> As a possibly unrelated issue, this number appears to be twice the
> expected number of watches.
>
> The Eglot events buffer shows an initial registration completing
> quickly:
>
> [jsonrpc] e[20:22:47.857] <-- client/registerCapability[2]
> {"jsonrpc":"2.0","id":2,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> [jsonrpc] e[20:22:48.003] --> client/registerCapability[2]
> {"jsonrpc":"2.0","id":2,"result":null}
>
> A subsequent registration of the same capabilities takes almost a
> minute:
>
> [jsonrpc] e[20:22:48.072] <-- client/registerCapability[7]
> {"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> [jsonrpc] e[20:23:39.573] --> client/registerCapability[7]
> {"jsonrpc":"2.0","id":7,"result":null}
>
> Before commit 07925d707000288e933ea8239e8c3c7189efb899, the same
> registration completed in approximately 100 ms:
>
> [jsonrpc] e[20:33:52.197] <-- client/registerCapability[7]
> {"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
> [jsonrpc] e[20:33:52.297] --> client/registerCapability[7]
> {"jsonrpc":"2.0","id":7,"result":null}
Thanks, I've added João and Michael to this discussion.
> In GNU Emacs 32.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
> 3.24.52, cairo version 1.18.4) of 2026-08-25 built on arch
> Repository revision: 60d0df24d323867da7a834bfebaed2078b03c3f4
> Repository branch: master
> System Description: Arch Linux
>
> Configured using:
> 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
> --localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games
> --with-modules --without-m17n-flt --without-gconf
> --with-native-compilation=yes --with-native-compilation=aot
> --with-xinput2 --with-pgtk --without-xaw3d --with-sound=no
> --with-tree-sitter --without-gpm --without-compress-install
> 'CFLAGS=-march=native -O2 -pipe -fno-plt -fexceptions
> -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security
> -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer
> -mno-omit-leaf-frame-pointer' 'LDFLAGS=-Wl,-O1 -Wl,--sort-common
> -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs
> -fuse-ld=mold''
>
> Configured features:
> ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
> LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY
> PDUMPER PGTK PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
> TREE_SITTER WEBP XIM GTK3 ZLIB
>
> Important settings:
> value of $LC_MESSAGES: en_US.UTF-8
> value of $LANG: en_US.UTF-8
> value of $XMODIFIERS: im=fcit
> locale-coding-system: utf-8-unix
>
> Major mode: Lisp Interaction
>
> Minor modes in effect:
> tooltip-mode: t
> global-eldoc-mode: t
> eldoc-mode: t
> show-paren-mode: t
> electric-indent-mode: t
> mouse-wheel-mode: t
> tool-bar-mode: t
> menu-bar-mode: t
> file-name-shadow-mode: t
> global-font-lock-mode: t
> font-lock-mode: t
> blink-cursor-mode: t
> minibuffer-nonselected-mode: t
> minibuffer-regexp-mode: t
> line-number-mode: t
> indent-tabs-mode: t
> transient-mark-mode: t
> auto-composition-mode: t
> auto-encryption-mode: t
> auto-compression-mode: t
>
> Load-path shadows:
> None found.
>
> Features:
> (shadow sort mail-extr comp-run bytecomp byte-compile comp-common rx
> emacsbug lisp-mnt message mailcap yank-media puny dired dired-loaddefs
> rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config
> gnus-util text-property-search time-date subr-x mule-util mm-decode
> mm-bodies mm-encode mailabbrev gmm-utils mailheader cl-loaddefs cl-lib
> sendmail mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util
> mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electric
> uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
> term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar
> dnd fontset image regexp-opt fringe tabulated-list replace newcomment
> text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
> isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
> font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
> indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
> tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
> romanian slovak czech european ethiopic indian cyrillic chinese
> composite emoji-zwj charscript charprop case-table epa-hook
> jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
> theme-loaddefs faces cus-face macroexp files window text-properties
> overlay sha1 md5 base64 format env code-pages mule custom widget keymap
> hashtable-print-readable backquote threads dbusbind inotify
> dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
> lcms2 multi-tty move-toolbar make-network-process tty-child-frames
> native-compile emacs)
>
> Memory information:
> ((conses 16 56594 8946) (symbols 48 6213 0) (strings 32 15044 1231)
> (string-bytes 1 527368) (vectors 16 9794)
> (vector-slots 8 140737 8363) (floats 8 22 2) (intervals 56 279 0)
> (buffers 1064 10))
>
>
>
>
bug-gnu-emacs@HIDDEN:bug#81731; Package emacs.
Full text available.
Received: (at submit) by debbugs.gnu.org; 28 Aug 2026 20:04:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Aug 28 16:04:58 2026
Received: from localhost ([127.0.0.1]:51323 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1x02oq-0008AW-On
for submit <at> debbugs.gnu.org; Fri, 28 Aug 2026 16:04:58 -0400
Received: from lists1p.gnu.org ([2001:470:142::17]:36180)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <jacekswierk@HIDDEN>)
id 1x02on-00089Q-Fl
for submit <at> debbugs.gnu.org; Fri, 28 Aug 2026 16:04:54 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <jacekswierk@HIDDEN>)
id 1x02VD-0007FR-Gz
for bug-gnu-emacs@HIDDEN; Fri, 28 Aug 2026 15:44:39 -0400
Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430])
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.90_1) (envelope-from <jacekswierk@HIDDEN>)
id 1x02VB-0006ud-FP
for bug-gnu-emacs@HIDDEN; Fri, 28 Aug 2026 15:44:39 -0400
Received: by mail-wr1-x430.google.com with SMTP id
ffacd0b85a97d-482fc2b44a7so856790f8f.2
for <bug-gnu-emacs@HIDDEN>; Fri, 28 Aug 2026 12:44:36 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20251104; t=1787946275; x=1788551075; darn=gnu.org;
h=content-transfer-encoding:content-type:content-language:subject:to
:user-agent:mime-version:date:message-id:from:from:to:cc:subject
:date:message-id:reply-to:content-type;
bh=e3YWSTvX/BHMBo/5Cq+v38kQuBY1ndGDLHsLCuSAxW4=;
b=OoMhUzmHP4QCIEzYRokNnXUXCoButZJvgbT3GsA8aeVPfoLDLsTDQe29dts6dystWy
c40kep9/nMWZBuCrohbbWBNlEK1llFTujPOJhR86klwjr3OQZ17CZFq6Q6HTw3FyIL/t
u4EL5MyQVwhvJhs9omS6QGYoUYfbNrtA8vS+XEkVH2Pxqz7mGZKu3e8NnTkD8rqC81t4
9aA9BleATd66OYH0bX7q8LUitknpVdRQS4hQFzxTAZhUyl0BCY0eAZ7IYFiVcnISHQaF
56aUdLN2EO1rDWxk6vUL09OwB/oc7CXYeiAU9eJ4GBoQMf+sNezVKcO5uw/s/WDgwuo9
T74A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20251104; t=1787946275; x=1788551075;
h=content-transfer-encoding:content-type:content-language:subject:to
:user-agent:mime-version:date:message-id:from:x-gm-gg
:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
:content-type;
bh=e3YWSTvX/BHMBo/5Cq+v38kQuBY1ndGDLHsLCuSAxW4=;
b=CIOHT15gF2iyYQdklCifUtB90ZmBcrass0V2caJVrYwXFLjspHv0yw5hTDkaoo6FHa
jbQOHjbUAQOrmGF27JvFqObsUg1oHZ08lgyOk6DhqSIEJV36WoI1gv3U1qoRRVvRqxZj
hwmA5g/qxZTTUKwFaQ0I+nNYyYfdZrPhwabpH5AQt7+DxZbrSeF7x6gmhQfpZEJN2Iiu
b+CtyR/hD9Nq343BOmWxlR7CNZPTKa05zA833h2uurNI999Kn31S6rS/ofFI/FWnU+s2
dH52bEh0FRT+AAP4BgOa946Jc8xpD1xJnWFm18aClsvEeOPETXlITfMnQ3BRH3Uig9Yi
1tgQ==
X-Gm-Message-State: AFuF++klZlfW87FjKC56pxkxfhqiFljS7aIJ/rsJQ2X0j7/JGIf3N4pu
2q/sjdL/b1eteHAWpAtY0nsSDfS00imJz3avjt5JL4f4vCA9u6h9QX0sXpSz2A==
X-Gm-Gg: AYBFou3i2f16QnzexjQwbFDE1+7ZenG9L4iDU32PfnGnO/9aF+0HBgMsQ/E8vI2zoV8
Zg44znpoMjNBiezcAJG9d6DPi4N1A/cqNV4OEHLxlw9F1M3Jyqw3CM32RGQrDHpBggbDQiv1rqp
NS0JcQbTDVRoBejHNpB1T5U5dvHRtM8isAJvbe8xim2jzNdhdKXJbrxkozCX/neV/4Pdh6CpGqW
XzkIgbynjS0dLc1Gh1xp+JgETQmPBOlxEF771PoMwLSIrcUdVP4PjNVrwegmrUgqt4XR9sHxPOU
N0bAT7EbHkqjDTD5Jpvqq7c2FoYp0IrhEyssTUfIt5B0Wko4LrDdkJdrqBwK1UJf5p/E45cp4nw
RkauJJe8BzzKmb8rwJY0K3TpB+g5ig5FDhEYrvz7+cLJM8LVapT5vJt8QbNAedjv3bVGX+tkp6D
6pBK9tlkKN78SD451DVvSU7GEqljAzDPW9YdtIZ/BChHQycWg0G1LX3GqD83qs4SS7FRBIj5d9r
VV65wc5RFjJ7DpQYO4iLzYIcQDrd9YhIuCWV798kebUSzOo8pqGA9nenwUiwfON+w4eWOFPrA==
X-Received: by 2002:a05:6000:1864:b0:481:503b:b663 with SMTP id
ffacd0b85a97d-482f79c8523mr17519823f8f.18.1787946275228;
Fri, 28 Aug 2026 12:44:35 -0700 (PDT)
Received: from ?IPV6:2a02:a31b:20a0:4780:2053:72bc:f7ed:af12?
([2a02:a31b:20a0:4780:2053:72bc:f7ed:af12])
by smtp.gmail.com with ESMTPSA id
ffacd0b85a97d-482fbb28492sm5670402f8f.31.2026.08.28.12.44.34
for <bug-gnu-emacs@HIDDEN>
(version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
Fri, 28 Aug 2026 12:44:34 -0700 (PDT)
From: "=?UTF-8?Q?Jacek_=C5=9Awierk?=" <jacekswierk@HIDDEN>
X-Google-Original-From: =?UTF-8?Q?Jacek_=C5=9Awierk?= <jacek.swierk@HIDDEN>
Message-ID: <f41fe103-8754-436a-9dec-71b9e99d7e99@HIDDEN>
Date: Fri, 28 Aug 2026 21:44:34 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: bug-gnu-emacs@HIDDEN
Subject: 32.0.50; registering many file watches is extremely slow
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=2a00:1450:4864:20::430;
envelope-from=jacekswierk@HIDDEN; helo=mail-wr1-x430.google.com
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_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 2.0 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
has NOT identified this incoming email as spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: Eglot uses filenotify to install watches for subdirectories
matching glob patterns dynamically registered by an LSP server. Commit
07925d707000288e933ea8239e8c3c7189efb899
appears to have introduced a [...]
Content analysis details: (2.0 points, 10.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
-0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/,
no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org]
1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail)
1.0 FORGED_GMAIL_RCVD 'From' gmail.com does not match 'Received'
headers -0.0 SPF_HELO_PASS SPF: HELO matches SPF record
0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
provider (jacekswierk[at]gmail.com)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)
Eglot uses filenotify to install watches for subdirectories matching
glob patterns dynamically registered by an LSP server. Commit
07925d707000288e933ea8239e8c3c7189efb899 appears to have introduced a
significant performance regression. In repositories containing many
matching subdirectories, Eglot can block Emacs for tens of seconds while
registering the requested watches. During this time, the UI is
effectively unresponsive.
This example uses rust-analyzer, because clangd does not appear to
dynamically register file watchers.
1. cargo new foo
2. cd foo
3. Generate a lot of subdirectories:
for i in $(seq -w 0 1000); do
mkdir "src/mod_$i"
touch "src/mod_$i/lib.rs"
done
4. emacs -Q src/main.rs
5. M-x eglot
Emacs becomes unresponsive for many seconds while Eglot installs
approximately 2,000 inotify watches.
After initialization completes, M-x eglot-describe-connection reports:
File watchers
workspace/didChangeWatchedFiles -> 2006 watchers
As a possibly unrelated issue, this number appears to be twice the
expected number of watches.
The Eglot events buffer shows an initial registration completing
quickly:
[jsonrpc] e[20:22:47.857] <-- client/registerCapability[2]
{"jsonrpc":"2.0","id":2,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
[jsonrpc] e[20:22:48.003] --> client/registerCapability[2]
{"jsonrpc":"2.0","id":2,"result":null}
A subsequent registration of the same capabilities takes almost a
minute:
[jsonrpc] e[20:22:48.072] <-- client/registerCapability[7]
{"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
[jsonrpc] e[20:23:39.573] --> client/registerCapability[7]
{"jsonrpc":"2.0","id":7,"result":null}
Before commit 07925d707000288e933ea8239e8c3c7189efb899, the same
registration completed in approximately 100 ms:
[jsonrpc] e[20:33:52.197] <-- client/registerCapability[7]
{"jsonrpc":"2.0","id":7,"method":"client/registerCapability","params":{"registrations":[{"id":"workspace/didChangeWatchedFiles","method":"workspace/didChangeWatchedFiles","registerOptions":{"watchers":[{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.rs"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/Cargo.{lock,toml}"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/rust-analyzer.toml"}},{"globPattern":{"baseUri":"file:///tmp/foo","pattern":"**/*.md"}},{"globPattern":"/home/jswierk/.config/rust-analyzer"},{"globPattern":"/tmp/foo/Cargo.toml"}]}}]}}
[jsonrpc] e[20:33:52.297] --> client/registerCapability[7]
{"jsonrpc":"2.0","id":7,"result":null}
In GNU Emacs 32.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.52, cairo version 1.18.4) of 2026-08-25 built on arch
Repository revision: 60d0df24d323867da7a834bfebaed2078b03c3f4
Repository branch: master
System Description: Arch Linux
Configured using:
'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
--localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games
--with-modules --without-m17n-flt --without-gconf
--with-native-compilation=yes --with-native-compilation=aot
--with-xinput2 --with-pgtk --without-xaw3d --with-sound=no
--with-tree-sitter --without-gpm --without-compress-install
'CFLAGS=-march=native -O2 -pipe -fno-plt -fexceptions
-Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security
-fstack-clash-protection -fcf-protection -fno-omit-frame-pointer
-mno-omit-leaf-frame-pointer' 'LDFLAGS=-Wl,-O1 -Wl,--sort-common
-Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs
-fuse-ld=mold''
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG
LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY
PDUMPER PGTK PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP XIM GTK3 ZLIB
Important settings:
value of $LC_MESSAGES: en_US.UTF-8
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: im=fcit
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
minibuffer-nonselected-mode: t
minibuffer-regexp-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr comp-run bytecomp byte-compile comp-common rx
emacsbug lisp-mnt message mailcap yank-media puny dired dired-loaddefs
rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config
gnus-util text-property-search time-date subr-x mule-util mm-decode
mm-bodies mm-encode mailabbrev gmm-utils mailheader cl-loaddefs cl-lib
sendmail mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electric
uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify
dynamic-setting system-font-setting font-render-setting cairo gtk pgtk
lcms2 multi-tty move-toolbar make-network-process tty-child-frames
native-compile emacs)
Memory information:
((conses 16 56594 8946) (symbols 48 6213 0) (strings 32 15044 1231)
(string-bytes 1 527368) (vectors 16 9794)
(vector-slots 8 140737 8363) (floats 8 22 2) (intervals 56 279 0)
(buffers 1064 10))
"Jacek Świerk" <jacekswierk@HIDDEN>:bug-gnu-emacs@HIDDEN.
Full text available.bug-gnu-emacs@HIDDEN:bug#81731; Package emacs.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.