From mboxrd@z Thu Jan 1 00:00:00 1970
Path: news.gmane.org!.POSTED!not-for-mail
From: Philipp Stephani
Newsgroups: gmane.emacs.bugs
Subject: bug#33547: 27.0.50; Emacs stuck in infinite loop in garbage collection
Date: Thu, 29 Nov 2018 17:53:02 +0100
Message-ID:
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Trace: blaine.gmane.org 1543510337 16833 195.159.176.226 (29 Nov 2018 16:52:17 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Thu, 29 Nov 2018 16:52:17 +0000 (UTC)
To: 33547@debbugs.gnu.org
Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 29 17:52:13 2018
Return-path:
Envelope-to: geb-bug-gnu-emacs@m.gmane.org
Original-Received: from lists.gnu.org ([208.118.235.17])
by blaine.gmane.org with esmtp (Exim 4.84_2)
(envelope-from )
id 1gSPXr-00046O-HL
for geb-bug-gnu-emacs@m.gmane.org; Thu, 29 Nov 2018 17:52:07 +0100
Original-Received: from localhost ([::1]:55251 helo=lists.gnu.org)
by lists.gnu.org with esmtp (Exim 4.71)
(envelope-from )
id 1gSPZx-00051b-Pm
for geb-bug-gnu-emacs@m.gmane.org; Thu, 29 Nov 2018 11:54:17 -0500
Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42068)
by lists.gnu.org with esmtp (Exim 4.71)
(envelope-from ) id 1gSPZk-0004zg-Ub
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:54:07 -0500
Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from ) id 1gSPZi-0006l7-Lq
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:54:04 -0500
Original-Received: from debbugs.gnu.org ([208.118.235.43]:50781)
by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)
(Exim 4.71) (envelope-from )
id 1gSPZi-0006kr-GE
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:54:02 -0500
Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
(envelope-from ) id 1gSPZi-0005nK-D5
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:54:02 -0500
X-Loop: help-debbugs@gnu.org
Resent-From: Philipp Stephani
Original-Sender: "Debbugs-submit"
Resent-CC: bug-gnu-emacs@gnu.org
Resent-Date: Thu, 29 Nov 2018 16:54:02 +0000
Resent-Message-ID:
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: report 33547
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords:
X-Debbugs-Original-To: bug-gnu-emacs@gnu.org
Original-Received: via spool by submit@debbugs.gnu.org id=B.154351040822232
(code B ref -1); Thu, 29 Nov 2018 16:54:02 +0000
Original-Received: (at submit) by debbugs.gnu.org; 29 Nov 2018 16:53:28 +0000
Original-Received: from localhost ([127.0.0.1]:55039 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from )
id 1gSPZ9-0005mV-BF
for submit@debbugs.gnu.org; Thu, 29 Nov 2018 11:53:28 -0500
Original-Received: from eggs.gnu.org ([208.118.235.92]:60506)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from ) id 1gSPZ5-0005mG-Ka
for submit@debbugs.gnu.org; Thu, 29 Nov 2018 11:53:24 -0500
Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from ) id 1gSPYx-0006Nq-67
for submit@debbugs.gnu.org; Thu, 29 Nov 2018 11:53:18 -0500
Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:36525)
by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
(Exim 4.71) (envelope-from )
id 1gSPYx-0006Nm-23
for submit@debbugs.gnu.org; Thu, 29 Nov 2018 11:53:15 -0500
Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41880)
by lists.gnu.org with esmtp (Exim 4.71)
(envelope-from ) id 1gSPYt-0004cJ-Dm
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:53:14 -0500
Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from ) id 1gSPYr-0006Ll-8o
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:53:11 -0500
Original-Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]:53263)
by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)
(Exim 4.71) (envelope-from )
id 1gSPYq-0006LN-U1
for bug-gnu-emacs@gnu.org; Thu, 29 Nov 2018 11:53:09 -0500
Original-Received: by mail-wm1-x32b.google.com with SMTP id y1so2990488wmi.3
for ; Thu, 29 Nov 2018 08:53:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
h=from:to:subject:date:message-id:mime-version
:content-transfer-encoding;
bh=07zlNd/s38T3Xbg0sNBVuTxAnP5D5uF3YzXgtKGRcZU=;
b=TmRvM5ayhQ+kf6ooZxfRjmZpqiO/vGiNRVJKtdBQhdQmswS4NjXsoFlm9REzCUhDbP
vdd3dvOoYnMvNmTF5HH6UKaDdPrh/gm7TW5xJka+D5eQGY30McqsyW5TqYIYd49qsw4Z
/Kd7ZHnYmRf9ITWmBm2pNZdLI3VDK64VNfPmZ4Mg+wFiQkTqPM9ERILnIGzIkWgQ5fFk
WH1l+z3MG5haNNlgMDD7MpG97S2o6UPC09g5HZtccwKCAHcggl6JW/o+sQDdEx5Tvrl+
T+ns+QzxeuqK+L4nMecMFnzTxRctRmyM7VvOHXQLXUcnCBDRdE1t0GzjocVnfSEKvZjq
+yng==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:from:to:subject:date:message-id:mime-version
:content-transfer-encoding;
bh=07zlNd/s38T3Xbg0sNBVuTxAnP5D5uF3YzXgtKGRcZU=;
b=YFi89GQNWI9C3fh/Bm0DaYmelc/brGGOAah/pYJ2llqrPmRo+v2dCZC2b5SB6hllLF
pTvSMRT8GBCe7uSnR4/eNcUFhQD43jourQ9Sztejww4ICzX6tnwJa7kfL/aiWxkyG0eH
HHifUQTGD4hs3PEivp2roOfCeiZ/gahYfaqSv8Gsucr6ukOr4km4L/6V+9WvM8HNMtvZ
zXVs6ZlsxuhNAV5lzvTzvjI4Jdu1K4/aDQ1KVwI6EVQDSKPGt8obnk/BDQnTQXrihzKn
jd3Ge2YjiAAfTJ18oUng1rMc41TuiNZXOsJL0yKqC1ch0j2ZZ1F7UzVUqbGD12u3BA92
WQvw==
X-Gm-Message-State: AA+aEWbt6OAUkDJrPQc9fzBoLWBtb9Hm5+sxl4h2lmVF603v6HbtIH6b
+Kz/5+QOC0DrOoS5V2qzeY7mvDgU
X-Google-Smtp-Source: AFSGD/X3mBmuYS9j6ipufsZ5xs+uZlwFaim0yGdXRrLgblG7V9eE6xPHrV+mV5P7dHAe5fnAmRO6Iw==
X-Received: by 2002:a1c:d988:: with SMTP id q130mr2548924wmg.41.1543510386660;
Thu, 29 Nov 2018 08:53:06 -0800 (PST)
Original-Received: from a.muc.corp.google.com ([2a00:79e0:15:10:cd99:29f5:6da:65fc])
by smtp.gmail.com with ESMTPSA id p4sm1473221wrs.74.2018.11.29.08.53.05
for
(version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
Thu, 29 Nov 2018 08:53:05 -0800 (PST)
X-detected-operating-system: by eggs.gnu.org: Genre and OS details not
recognized.
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-BeenThere: debbugs-submit@debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 208.118.235.43
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.org@gnu.org
Original-Sender: "bug-gnu-emacs"
Xref: news.gmane.org gmane.emacs.bugs:152896
Archived-At:
I didn't manage to reproduce this issue yet, but it seems that
Emacs 26.2 can get stuck in an infinite loop in garbage collection:
(gdb) bt
#0 0x000000000050992c in mark_kboards () at keyboard.c:12020
#1 0x0000000000555f55 in garbage_collect_1 (end=3D) at allo=
c.c:5987
#2 0x0000000000555f55 in Fgarbage_collect () at alloc.c:6159
#3 0x000000000056e5e4 in maybe_gc () at lisp.h:4751
#4 0x000000000056e5e4 in Ffuncall (nargs=3D2, args=3Dargs@entry=3D0x7ffd3b=
9fbbb0) at eval.c:2809
#5 0x00000000005a95b0 in exec_byte_code (bytestr=3D, vector=
=3D, maxdepth=3D, args_template=3D, nargs=3Dnargs@entry=3D140725603777472, args=3D,=20
args@entry=3D0x17ffd3b9fbdd0) at bytecode.c:630
#6 0x0000000000571041 in funcall_lambda (fun=3DXIL(0x7ffd3b9fbbb0), nargs=
=3D140725603777472, nargs@entry=3D0, arg_vector=3D0x17ffd3b9fbdd0, arg_vect=
or@entry=3D0x7ffd3b9fbdd0) at eval.c:3028
#7 0x000000000056e6eb in Ffuncall (nargs=3Dnargs@entry=3D1, args=3Dargs@en=
try=3D0x7ffd3b9fbdc8) at eval.c:2841
#8 0x000000000056e808 in call0 (fn=3D, fn@entry=3DXIL(0x7b3=
0)) at eval.c:2670
#9 0x000000000050488b in read_char (commandflag=3Dcommandflag@entry=3D1, m=
ap=3Dmap@entry=3DXIL(0xaa1e353), prev_event=3DXIL(0), used_mouse_menu=3Duse=
d_mouse_menu@entry=3D0x7ffd3b9fc44b, end_time=3Dend_time@entry=3D0x0)
at keyboard.c:2619
#10 0x000000000050554c in read_key_sequence
(keybuf=3Dkeybuf@entry=3D0x7ffd3b9fc540, prompt=3Dprompt@entry=3DXIL(0)=
, dont_downcase_last=3Ddont_downcase_last@entry=3Dfalse, can_return_switch_=
frame=3Dcan_return_switch_frame@entry=3Dtrue, fix_current_buffer=3Dfix_curr=
ent_buffer@entry=3Dtrue, prevent_redisplay=3Dprevent_redisplay@entry=3Dfals=
e, bufsize=3D30) at keyboard.c:9148
#11 0x0000000000506f84 in command_loop_1 () at keyboard.c:1368
#12 0x000000000056d91e in internal_condition_case (bfun=3Dbfun@entry=3D0x50=
6d60 , handlers=3Dhandlers@entry=3DXIL(0x53d0), hfun=3Dhfun=
@entry=3D0x4fdaa0 ) at eval.c:1336
#13 0x00000000004f86b4 in command_loop_2 (ignore=3Dignore@entry=3DXIL(0)) a=
t keyboard.c:1110
#14 0x000000000056d88d in internal_catch (tag=3Dtag@entry=3DXIL(0xccc0), fu=
nc=3Dfunc@entry=3D0x4f8690 , arg=3Darg@entry=3DXIL(0)) at e=
val.c:1101
#15 0x00000000004f864b in command_loop () at keyboard.c:1089
#16 0x00000000004fd6b3 in recursive_edit_1 () at keyboard.c:695
#17 0x00000000004fd9ce in Frecursive_edit () at keyboard.c:766
#18 0x000000000041afc3 in main (argc=3D, argv=3D0x7ffd3b9fc8=
e8) at emacs.c:1751
Lisp Backtrace:
"Automatic GC" (0x0)
"vector" (0x3b9fbbb8)
"internal-echo-keystrokes-prefix" (0x3b9fbdd0)
In this situation, Emacs never leaves mark_kboards. The variables here
are:
(gdb) p &kbd_buffer
$7 =3D (union buffered_input_event (*)[4096]) 0x9a23e0
(gdb) p ((union buffered_input_event*)kbd_buffer + 4096)
$9 =3D (union buffered_input_event *) 0x9da3e0
(gdb) p kbd_fetch_ptr
$4 =3D (union buffered_input_event *) 0x9d9340
(gdb) p kbd_store_ptr
$5 =3D (union buffered_input_event * volatile) 0x9a23e0
(gdb) p event
$6 =3D (union buffered_input_event *) 0x9ad078
The loop starts with
for (event =3D kbd_fetch_ptr; event !=3D kbd_store_ptr; event++)
{
if (event =3D=3D kbd_buffer + KBD_BUFFER_SIZE)
event =3D kbd_buffer;
This seems suspicious given that kbd_fetch_ptr > kbd_store_ptr. It
seems like this loop can never terminate, but I don't know how we got
into that situation.
(gdb) bt full
#0 0x000000000050992c in mark_kboards () at keyboard.c:12020
event =3D 0x9ad078
kb =3D
p =3D
#1 0x0000000000555f55 in garbage_collect_1 (end=3D) at allo=
c.c:5987
nextb =3D
i =3D
stack_top_variable =3D 0 '\000'
message_p =3D false
tot_before =3D 0
total =3D {XIL(0), XIL(0x4), XIL(0x7ffd3b9fbd50), XIL(0x5aae61), XI=
L(0x73de6d), XIL(0xfffffffffe0a3ba0), XIL(0), XIL(0xb7ed375), XIL(0xc660), =
XIL(0)}
#2 0x0000000000555f55 in Fgarbage_collect () at alloc.c:6159
#3 0x000000000056e5e4 in maybe_gc () at lisp.h:4751
fun =3D
original_fun =3D
numargs =3D 1
val =3D
count =3D 4
#4 0x000000000056e5e4 in Ffuncall (nargs=3D2, args=3Dargs@entry=3D0x7ffd3b=
9fbbb0) at eval.c:2809
fun =3D
original_fun =3D
numargs =3D 1
val =3D
count =3D 4
#5 0x00000000005a95b0 in exec_byte_code (bytestr=3D, vector=
=3D, maxdepth=3D, args_template=3D, nargs=3Dnargs@entry=3D140725603777472, args=3D,=20
args@entry=3D0x17ffd3b9fbdd0) at bytecode.c:630
op =3D
type =3D
targets =3D=20
{0x5ab9e9 , 0x5a98bd , =
0x5a98b8 , 0x5a98b3 , 0x5a96d8 , 0x5a96d8 , 0x5a987d , 0x5a983d , 0x5aa1e6 , 0=
x5aa20c , 0x5aa207 , 0x5aa202 , 0x5a967f , 0x5a9680 , 0x5aa3c0 , 0x5aa1eb , 0x5a=
a294 , 0x5aa28f , 0x5aa28a , 0x5aa285 , 0x5a95ca , 0x5a95d0 , 0x5aa261 , 0x5aa26=
e , 0x5aa703 , 0x5aa6fe , 0x5aa6f9 , 0x5aa6f4 , 0x5a9638 , 0x5a9640 , 0x5aa228 <=
exec_byte_code+3912>, 0x5aa211 , 0x5aa6cb , 0x5aa6c6 , 0x5aa6c1 , =
0x5aa6bc , 0x5a9586 , 0x5a9590 , 0x5aa6e7 , 0x5aa6d0 , 0x5aa693 , 0x5aa68e , 0x5=
aa689 , 0x5aa684 , 0x5a9521 , 0x5a9528 , 0x5aa6af , 0x5aa698 , 0x5ab44e , 0x5ab5=
d8 , 0x5ab518 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab25=
9 , 0x5ab21a , 0x5ab1d5 , 0x5ab190 , 0x5ab152 , 0x5aa30a , 0x5aa2d1 , 0x5ab125=
, 0x5aa34c , 0x5aa299 , 0x5ab0ec , 0x5ab0c3 =
, 0x5ab08a , 0x5ab057 , 0x5ab024 =
, 0x5aafb9 , 0x5aaf80 , 0x5aaf43 , 0x5aaf1a ,=
0x5aaef1 , 0x5aaeb8 , 0x5aae7f <=
exec_byte_code+7071>, 0x5aae46 , 0x5aae09 , 0x5aadd6 , 0x5aada3 , =
0x5aad70 , 0x5aacec , 0x5aacaa , 0x5aac16 , 0x5aabd8 , 0x5aab9a , 0x5aab5c , 0=
x5aab1e , 0x5aaaeb , 0x5aaaaa , 0x5aaa77 , 0x5aaa44 , 0x5aaa11 , 0x5aa9de , 0x=
5aa92f , 0x5a9750 , 0x5aa906 , 0x5aa8d8 , 0x5aa853 , 0x5aa810 , 0x5aa7e7 , 0x5=
aa7bc , 0x5aa791 , 0x5aa75e , 0x5aa733 , 0x5ab9e9 , 0x5aa708 , 0x5a9f9f , 0x5a=
9f74 , 0x5a9f49 , 0x5a9f1e , 0x5a9ef5 , 0x5a9750 , 0x5ab9e9 , 0x5a9eb6 , 0x5a9=
e8d , 0x5a9e64 , 0x5aa003 , 0x5a9fca , 0x5a9b20 , 0x5a9aff , 0x5a9ac6 , 0x5a9a=
8d , 0x5a9a54 , 0x5a9a29 , 0x5a9c9c , 0x5ab9e9 , 0x5aa3fb , 0x5aa632 , 0x5aa38=
4 , 0x5aa5f6 , 0x5aa5c1 , 0x5aa588 , 0x5aa03c , 0x5aa43a , 0x5aa235 , 0x5aa3cd=
, 0x5ab4a9 , 0x5ab47b , 0x5ab598 , 0x5ab400 =
, 0x5ab3c3 , 0x5ab37d , 0--Type <=
RET> for more, q to quit, c to continue without paging--c
x5ab30a , 0x5aa660 , 0x5a9c5f , 0x5a9c36 , 0x5a9c0d , 0x5a9be4 , 0x5a9bbb , 0x=
5a9b82 , 0x5a9b49 , 0x5a9d90 , 0x5a9d57 , 0x5a9cfe , 0x5a9cc5 , 0x5a9df2 , 0x5=
a9dc9 , 0x5a9e2b , 0x5a99f0 , 0x5a99b8 , 0x5a9980 , 0x5a994d , 0x5aa9ab , 0x5a=
a972 , 0x5a9907 , 0x5a98c2 , 0x5ab9e9 , 0x5aa52f , 0x5aa4f8 , 0x5aa4c1 , 0x5aa=
48d , 0x5aa459 , 0x5aafe2 , 0x5aad2e , 0x5aa896 , 0x5a97fc , 0x5a97af , 0x5ab9=
e9 , 0x5ab9e9 , 0x5a977e , 0x5aa0cd , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e=
9 , 0x5ab9e9 , 0x5ab9e9 , 0x5ab9e9