From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lin Sun Newsgroups: gmane.emacs.bugs Subject: bug#73855: [PATCH] * lisp/autorevert.el: Avoid reverting buffer in short time Date: Thu, 17 Oct 2024 23:24:00 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000ed5c940624b47b2f" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10349"; mail-complaints-to="usenet@ciao.gmane.io" To: 73855@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Oct 18 01:28:11 2024 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 1t1Zuc-0002Wi-Jx for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 18 Oct 2024 01:28:10 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t1ZuB-00025N-8F; Thu, 17 Oct 2024 19:27:43 -0400 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 1t1Zu9-000253-3R for bug-gnu-emacs@gnu.org; Thu, 17 Oct 2024 19:27:41 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t1Zu8-0008It-R7 for bug-gnu-emacs@gnu.org; Thu, 17 Oct 2024 19:27:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=Date:From:MIME-Version:To:Subject; bh=yXpD3v/j4Jj/tj+u9KeO4r/OF7xBt7v+deyrRcSRY44=; b=u7166XP/+KWdJ+TIcyShfvb3hOvhlav48zSLH+eMdPFM5knSfexoOXdlQFcpcBsyobKHIfS2QzHdOuMw95/secG7p+tBBE3NaEaEn5YghiDtcG1adHGQTj4MA9kPry7zRSmlX8Iuib36sDilFnJAT94WwiUWsUbQWzW5a9vfICVwcU/vAZ44obPsAqm7IZQicCcKlBAN/ei1okpbfADkTnGITaq1YPAVJ38Ax8MsJxhmMTEPPVttbxHECDt7nUWgKyhsT2IikHpzOtnLsNtoylBWROBFTMjPbr8UYBb0jg5DTSreg5GVOoehL5l+c0XKe/SMZT0brkVOoXW45am4SQ==; Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1t1ZuU-0002g6-0P for bug-gnu-emacs@gnu.org; Thu, 17 Oct 2024 19:28:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lin Sun Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Oct 2024 23:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 73855 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.172920762910204 (code B ref -1); Thu, 17 Oct 2024 23:28:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 17 Oct 2024 23:27:09 +0000 Original-Received: from localhost ([127.0.0.1]:36246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t1Ztd-0002eV-51 for submit@debbugs.gnu.org; Thu, 17 Oct 2024 19:27:09 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:34818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t1ZtZ-0002eM-VX for submit@debbugs.gnu.org; Thu, 17 Oct 2024 19:27:07 -0400 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 1t1Zr3-0001pS-Lu for bug-gnu-emacs@gnu.org; Thu, 17 Oct 2024 19:24:31 -0400 Original-Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t1Zr1-0007nd-9X for bug-gnu-emacs@gnu.org; Thu, 17 Oct 2024 19:24:29 -0400 Original-Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-a99fa009adcso76264566b.0 for ; Thu, 17 Oct 2024 16:24:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1729207452; x=1729812252; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=yXpD3v/j4Jj/tj+u9KeO4r/OF7xBt7v+deyrRcSRY44=; b=BeLtKrgyzt9tlHT2EvXwhhCUh+CWIoGQyG1Y2lMdYu8eNJin7mKdgadOpLa1a7BYqY XAzi1c3fqLBlDEImKtDXc35boevvAx7UXlH69wI96WkbdPhNg2Lu2lCudE1toz2KaXas l7cPGh6lHMVcbierzAOvGUHYKk1ZwbYGmZzmJ28jxmLCGHMmFVjoFa1jpaf9pznFUJGh +5f8JgP4ey36WSyaG6nWF72on9Xk6QjlDAumlBKjpIx8r6BSkwFzM1+pJ8gc7JaKNy7h sBIZsP14grHQTfvDftGQu7q4SCu3xAjqpxL9vmkgtlYQ8HuV+0DzVH+TqN5iyyL4tA/7 3lQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729207452; x=1729812252; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=yXpD3v/j4Jj/tj+u9KeO4r/OF7xBt7v+deyrRcSRY44=; b=Q1EWdXRGeYYFl9F85LJ2sKb6VsNh/zmhkIFEDvxXv7vBzitto5FuzbYrlfAxMTgdRF rjp4wSNMMbL2jNzbahmSKG3ltKhQ5rr3LwVG8+Lw8LBLS4hAgk+0qPfKF3o3wGc6USa2 TNenBuGgtlA6nNyOvRIgifEJOH+stYOOVMKRKl+Yi5UqKiHagfKPftAsGlQ3ufcT04w2 b8nPp5MP9qA0fqmPV+vw8QeOkBxNj3A/GK+yvFeJXPYmlqIhzbR5qz86eUjVtrMYv+qb tnnBM+7Xa0tZMOmo6qhxklxkqNoAgVjoe75OdwApUyd3P8r8uJfu0xQ8BzbGmW2BB8wS lfFA== X-Gm-Message-State: AOJu0YzA+7seZO1bjlg4HTQ4V9K20a7knVs6tbyhKiPTfPElfdJBOafu HPad5QVDqQ6jgN9kx+NkKwevAlj0a4rFTa+qYpoqK/O8P5Bj7Q14A5tMJGtjjZbUeI/+mpsokXm 4zPrwlIRUhRjJ8wo9H2T1gamXvoMmmEPp X-Google-Smtp-Source: AGHT+IFWqLJ2sPlhwn5MSTaOD09UNxBby+yNS+Fm4ZUskqjVoyjbpXZwIPAwdRtZIQKDG7YLLUBa4FPCPuUXCrhqCZ8= X-Received: by 2002:a05:6402:51ca:b0:5c9:5928:970 with SMTP id 4fb4d7f45d1cf-5ca0ac61c0bmr413430a12.19.1729207452118; Thu, 17 Oct 2024 16:24:12 -0700 (PDT) Received-SPF: pass client-ip=2a00:1450:4864:20::62f; envelope-from=sunlin7.mail@gmail.com; helo=mail-ej1-x62f.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-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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:293749 Archived-At: --000000000000ed5c940624b47b2f Content-Type: text/plain; charset="UTF-8" Hi, High CPU consumption after enabling the "auto-revert" for a buffer. Here is a way to reproduce the issue: 1. on one terminal run command "strace -f -o /tmp/a.log vi -nw" 2. on second terminal, start another emacs and open the file /tmp/a.log, enable the "auto-revert" mode on the /tmp/a.log buffer. Typing on 1st terminal(vi), the strace will continually write the /tmp/a.log, and the emacs try to revert the /tmp/a.log buffer again and again, then CPU loading turns high. The function `auto-revert-handler` may be called twice for 2.5 seconds intervals on a rapidly changed buffer/file. The root cause is `auto-revert--end-lockout` will call `auto-revert-handler` in which the `auto-revert--lockout-timer` was cleared, then the next call `auto-revert-notify-handler` will revert the buffer immediately regardless the buffer actually was revert just before. This patch will record when the buffer was reverted and avoid reverting it again in the same second. --000000000000ed5c940624b47b2f Content-Type: text/x-patch; charset="US-ASCII"; name="0001-lisp-autorevert.el-Avoid-reverting-buffer-in-short-t.patch" Content-Disposition: attachment; filename="0001-lisp-autorevert.el-Avoid-reverting-buffer-in-short-t.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m2dxgh590 RnJvbSBiMWRjNjMwNzE4YzM5YjJmYjYzMGQzNDlmMTg2YWMwNjAyOTBjNTE1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBMaW4gU3VuIDxzdW5saW43QGhvdG1haWwuY29tPgpEYXRlOiBU aHUsIDE3IE9jdCAyMDI0IDA2OjUwOjMxICswMDAwClN1YmplY3Q6IFtQQVRDSF0gKiBsaXNwL2F1 dG9yZXZlcnQuZWw6IEF2b2lkIHJldmVydGluZyBidWZmZXIgaW4gc2hvcnQgdGltZQoKLS0tCiBs aXNwL2F1dG9yZXZlcnQuZWwgfCAxNiArKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwg MTIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL2F1dG9y ZXZlcnQuZWwgYi9saXNwL2F1dG9yZXZlcnQuZWwKaW5kZXggMGZkYWI2ZmZjOWYuLmVmNzU4NTg0 YzBkIDEwMDY0NAotLS0gYS9saXNwL2F1dG9yZXZlcnQuZWwKKysrIGIvbGlzcC9hdXRvcmV2ZXJ0 LmVsCkBAIC0zNzAsNiArMzcwLDkgQEAgYXV0by1yZXZlcnQtbm90aWZ5LW1vZGlmaWVkLXAKICAg Ik5vbi1uaWwgd2hlbiBmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIG9uIHRoZSBmaWxlIHN5c3RlbS4K IFRoaXMgaGFzIGJlZW4gcmVwb3J0ZWQgYnkgYSBmaWxlIG5vdGlmaWNhdGlvbiBldmVudC4iKQog CisoZGVmdmFyLWxvY2FsIGF1dG8tcmV2ZXJ0LS1sYXN0LXRpbWUgbmlsCisgICJUaGUgbGFzdCB0 aW1lIG9mIGJ1ZmZlciB3YXMgcmV2ZXJ0ZWQuIikKKwogKGRlZnZhciBhdXRvLXJldmVydC1kZWJ1 ZyBuaWwKICAgIlVzZSBmb3IgZGVidWcgbWVzc2FnZXMuIikKIApAQCAtNzQ5LDEzICs3NTIsMTcg QEAgYXV0by1yZXZlcnQtbm90aWZ5LWhhbmRsZXIKICAgICAgICAgICAgICAgOzsgTWFyayBidWZm ZXIgbW9kaWZpZWQuCiAgICAgICAgICAgICAgIChzZXRxIGF1dG8tcmV2ZXJ0LW5vdGlmeS1tb2Rp ZmllZC1wIHQpCiAKLSAgICAgICAgICAgICAgOzsgUmV2ZXJ0IHRoZSBidWZmZXIgbm93IGlmIHdl J3JlIG5vdCBsb2NrZWQgb3V0LgorICAgICAgICAgICAgICA7OyBMb2NrIG91dCB0aGUgYnVmZmVy CiAgICAgICAgICAgICAgICh1bmxlc3MgYXV0by1yZXZlcnQtLWxvY2tvdXQtdGltZXIKLSAgICAg ICAgICAgICAgICAoYXV0by1yZXZlcnQtaGFuZGxlcikKICAgICAgICAgICAgICAgICAoc2V0cSBh dXRvLXJldmVydC0tbG9ja291dC10aW1lcgogICAgICAgICAgICAgICAgICAgICAgIChydW4td2l0 aC10aW1lcgogICAgICAgICAgICAgICAgICAgICAgICBhdXRvLXJldmVydC0tbG9ja291dC1pbnRl cnZhbCBuaWwKLSAgICAgICAgICAgICAgICAgICAgICAgIydhdXRvLXJldmVydC0tZW5kLWxvY2tv dXQgYnVmZmVyKSkpKSkpKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAjJ2F1dG8tcmV2ZXJ0 LS1lbmQtbG9ja291dCBidWZmZXIpKQorICAgICAgICAgICAgICAgIDs7IFJldmVydCBpdCB3aGVu IGZpcnN0IGVudHJ5IG9yIGl0IHdhcyByZXZlcnRlZCBpbnRlcnZhbHMgYWdvCisgICAgICAgICAg ICAgICAgKHdoZW4gKG9yIChudWxsIGF1dG8tcmV2ZXJ0LS1sYXN0LXRpbWUpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICg+IChmbG9hdC10aW1lICh0aW1lLXNpbmNlIGF1dG8tcmV2ZXJ0LS1s YXN0LXRpbWUpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvLXJldmVydC0tbG9j a291dC1pbnRlcnZhbCkpCisgICAgICAgICAgICAgICAgICAoYXV0by1yZXZlcnQtaGFuZGxlcikp KSkpKSkpKSkKIAogKGRlZnVuIGF1dG8tcmV2ZXJ0LS1lbmQtbG9ja291dCAoYnVmZmVyKQogICAi RW5kIHRoZSBsb2Nrb3V0IHBlcmlvZCBhZnRlciBhIG5vdGlmaWNhdGlvbi4KQEAgLTgwMSw3ICs4 MDgsOCBAQCBhdXRvLXJldmVydC1oYW5kbGVyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjJ2J1ZmZlci1zdGFsZS0tZGVmYXVsdC1mdW5jdGlvbikKICAgICAgICAgICAgICAgICAgICAg ICAgICAgdCkpKSkKICAgICAgICAgIGVvYiBlb2JsaXN0KQotICAgIChzZXRxIGF1dG8tcmV2ZXJ0 LW5vdGlmeS1tb2RpZmllZC1wIG5pbCkKKyAgICAoc2V0cSBhdXRvLXJldmVydC1ub3RpZnktbW9k aWZpZWQtcCBuaWwKKyAgICAgICAgICBhdXRvLXJldmVydC0tbGFzdC10aW1lIChjdXJyZW50LXRp bWUpKQogICAgICh3aGVuIHJldmVydAogICAgICAgKHdoZW4gKGFuZCBhdXRvLXJldmVydC12ZXJi b3NlCiAgICAgICAgICAgICAgICAgIChub3QgKGVxIHJldmVydCAnZmFzdCkpKQotLSAKMi4zNC4x Cgo= --000000000000ed5c940624b47b2f--