GNU logs - #44538, boring messages


Message sent to bug-grep@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#44538: grep -E might exhaust stack space
Resent-From: JIang Yuancheng <0599jiangyc@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-grep@HIDDEN
Resent-Date: Mon, 09 Nov 2020 17:45:02 +0000
Resent-Message-ID: <handler.44538.B.16049438761472 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 44538
X-GNU-PR-Package: grep
X-GNU-PR-Keywords: 
To: 44538 <at> debbugs.gnu.org
Cc: Kaihang Ji <kaihang@HIDDEN>
X-Debbugs-Original-To: bug-grep@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.16049438761472
          (code B ref -1); Mon, 09 Nov 2020 17:45:02 +0000
Received: (at submit) by debbugs.gnu.org; 9 Nov 2020 17:44:36 +0000
Received: from localhost ([127.0.0.1]:35528 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1kcBDY-0000Ng-3u
	for submit <at> debbugs.gnu.org; Mon, 09 Nov 2020 12:44:36 -0500
Received: from lists.gnu.org ([209.51.188.17]:37544)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <0599jiangyc@HIDDEN>) id 1kcB4C-0000AE-UE
 for submit <at> debbugs.gnu.org; Mon, 09 Nov 2020 12:34:57 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:39604)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <0599jiangyc@HIDDEN>)
 id 1kcB4C-00023N-Ly
 for bug-grep@HIDDEN; Mon, 09 Nov 2020 12:34:56 -0500
Received: from mail-pg1-x534.google.com ([2607:f8b0:4864:20::534]:40997)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <0599jiangyc@HIDDEN>)
 id 1kcB4A-0007PB-H3
 for bug-grep@HIDDEN; Mon, 09 Nov 2020 12:34:56 -0500
Received: by mail-pg1-x534.google.com with SMTP id f18so3249162pgi.8
 for <bug-grep@HIDDEN>; Mon, 09 Nov 2020 09:34:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:mime-version:subject:message-id:date:cc:to;
 bh=QJz3C/vBf1xLbAGh6mlYR+1WfaWxFwArjfu2nEtMnxk=;
 b=HA2wQPv+sYqWd6CrYx+P5YLBk9fNBRx9naAEE1DkRgnxTiEAq4QmMVjp/yCH8CyetN
 8q0p8h99E6/EZIa144FfO7xOdoMAxCoTi0p13Gqz/9iXJcXE8XbrTqaMktKOnnkdW7mx
 x2YT1alvQlonRJa76Kk4rlWgbTd2rQuD8qMPUBf+iOCwu9qMlGbLGMjHDdgEVKbmCxNF
 V9hCthKmIq/N5a8QbDFAaMIjGnlwsjDayYXul5S9V0o6vkCfE/04KRbExiBKLeMl5g4s
 27YLSU/ITk1HWvfg3SwLUJCdC8TVHi0zd/CBt78qVTBfgzRjQxfXij9g7QnqTdt7G6tk
 vB7Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:mime-version:subject:message-id:date:cc:to;
 bh=QJz3C/vBf1xLbAGh6mlYR+1WfaWxFwArjfu2nEtMnxk=;
 b=q6D4gS1bvS7560WiGdYxbuWaq1yG0pXp4ytydSxta91QOpPg7eDBW+LKqW8IgKWch9
 LSQQDn3m4XYb+ujTb2ZbjyizKRvGhiko1JNTOtR64QBICiC695VWcKpLXboJ9n4VF2TD
 2RlX3wo+L776G0TWhVgwAtcLjFzSSQseGYDDglMI6VpGk1J4kq9Mac2DzhFn9i3OVQjS
 6A98qUqOVXN0Cid1+/A7AjCw7wV2gxiFqpwuUvaKyc7ok9Du1PLmMpVnTOQz5MxRxpVe
 9XMX0UA23zhETI52khDnQFftzhUVe0Xf179+3JzNq0b9vKmyVyrb4R9Sv+y0YVEunh6K
 ojrQ==
X-Gm-Message-State: AOAM531PovV4bBCGtaglMHp7xorUiijVf3A7Spods7XRvhKe/KKjHteJ
 AMRU2VBl+zcqBpqsB3Cb29R3vKs+VwY=
X-Google-Smtp-Source: ABdhPJwGON50HxRcf9JwcAz7pE0DsWXqkVW4AVeuID2gHXNwPmXzOcxKaDF5F/u576eKaRP64E+cjw==
X-Received: by 2002:a63:fe0f:: with SMTP id p15mr13490811pgh.343.1604943292025; 
 Mon, 09 Nov 2020 09:34:52 -0800 (PST)
Received: from [192.168.18.4] ([116.88.183.62])
 by smtp.gmail.com with ESMTPSA id s17sm63872pjr.56.2020.11.09.09.34.49
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 09 Nov 2020 09:34:51 -0800 (PST)
From: JIang Yuancheng <0599jiangyc@HIDDEN>
Content-Type: multipart/alternative;
 boundary="Apple-Mail=_42DBBDEF-E628-4CCC-99C3-7CDDC87DCCB8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.1\))
Message-Id: <929253AA-9604-4609-A176-652C12E1D593@HIDDEN>
Date: Tue, 10 Nov 2020 01:34:47 +0800
X-Mailer: Apple Mail (2.3608.120.23.2.1)
Received-SPF: pass client-ip=2607:f8b0:4864:20::534;
 envelope-from=0599jiangyc@HIDDEN; helo=mail-pg1-x534.google.com
X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache.
 That's all we know.
X-Spam_score_int: -13
X-Spam_score: -1.4
X-Spam_bar: -
X-Spam_report: (-1.4 / 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,
 FROM_STARTS_WITH_NUMS=0.738, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -0.8 (/)
X-Mailman-Approved-At: Mon, 09 Nov 2020 12:44:34 -0500
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.8 (-)


--Apple-Mail=_42DBBDEF-E628-4CCC-99C3-7CDDC87DCCB8
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi,

grep -E =E2=80=9C.*{10,}{10,}{10,}{10,}{10,}=E2=80=9D can exhaust stack =
space then stack overflow comes out. (Tested on latest version 3.6)

jyc@ubuntu18:~/GREP/grep-3.6/src$ ./grep -E =
".*{10,}{10,}{10,}{10,}{10,}"=20
grep: stack overflow

Gdb information:

=
[----------------------------------registers------------------------------=
-----]
RAX: 0x0=20
RBX: 0x20 (' ')
RCX: 0x555555799010 --> 0x705070701010700=20
RDX: 0x0=20
RSI: 0x8=20
RDI: 0x7ffff7b5dc40 --> 0x0=20
RBP: 0xffffffffffffffb0=20
RSP: 0x7fffff7fefa0=20
RIP: 0x7ffff780637e (<_int_malloc+62>:	mov    QWORD PTR [rsp+0x8],rsi)
R8 : 0x68b1d=20
R9 : 0x0=20
R10: 0x555555799010 --> 0x705070701010700=20
R11: 0x0=20
R12: 0x7ffff4d228f8 --> 0x0=20
R13: 0x3458e8=20
R14: 0x0=20
R15: 0x55555579e460 --> 0x7ffff545e010 --> 0x2e ('.')
EFLAGS: 0x10202 (carry parity adjust zero sign trap INTERRUPT direction =
overflow)
=
[-------------------------------------code--------------------------------=
-----]
   0x7ffff7806373 <_int_malloc+51>:	test   al,al
   0x7ffff7806375 <_int_malloc+53>:	jne    0x7ffff7806a58 =
<_int_malloc+1816>
   0x7ffff780637b <_int_malloc+59>:	test   rdi,rdi
=3D> 0x7ffff780637e <_int_malloc+62>:	mov    QWORD PTR [rsp+0x8],rsi
   0x7ffff7806383 <_int_malloc+67>:	mov    r14,rdi
   0x7ffff7806386 <_int_malloc+70>:	je     0x7ffff7806a38 =
<_int_malloc+1784>
   0x7ffff780638c <_int_malloc+76>:	mov    r15d,ebx
   0x7ffff780638f <_int_malloc+79>:	shr    r15d,0x4
=
[------------------------------------stack--------------------------------=
-----]
Invalid $SP address: 0x7fffff7fefa0
=
[-------------------------------------------------------------------------=
-----]
Legend: code, data, rodata, value
Stopped reason: SIGSEGV
0x00007ffff780637e in _int_malloc (av=3Dav@entry=3D0x7ffff7b5dc40 =
<main_arena>, bytes=3Dbytes@entry=3D0x8)
    at malloc.c:3557
3557	malloc.c: No such file or directory.

ASAN:

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=3D=3D12861=3D=3DERROR: AddressSanitizer: stack-overflow on address =
0x7fffe9c8afc8 (pc 0x7f9f6989dd2e bp 0x7fffe9c8b060 sp 0x7fffe9c8afd0 =
T0)
    #0 0x7f9f6989dd2d  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x27d2d)
    #1 0x7f9f69954b0a in __interceptor_malloc =
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb0a)
    #2 0x555aa36928ec in re_node_set_alloc =
/home/jyc/GREP/grep-3.6/lib/regex_internal.c:973
    #3 0x555aa369f8cf in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1700
    #4 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737
    #5 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737
    #6 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737
=E2=80=A6
    #248 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737
    #249 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737
    #250 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737

SUMMARY: AddressSanitizer: stack-overflow =
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0x27d2d)=20
=3D=3D12861=3D=3DABORTING



Thanks,
Yuancheng=

--Apple-Mail=_42DBBDEF-E628-4CCC-99C3-7CDDC87DCCB8
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><span=
 style=3D"font-size: 14px;" class=3D"">Hi,</span><div class=3D""><span =
style=3D"font-size: 14px;" class=3D""><br class=3D""></span></div><div =
class=3D""><span style=3D"font-size: 14px;" class=3D""><b class=3D"">grep =
-E =E2=80=9C.*{10,}{10,}{10,}{10,}{10,}=E2=80=9D can exhaust stack space =
then stack overflow comes out. (Tested on latest version =
3.6)</b></span></div><div class=3D""><span style=3D"font-size: 14px;" =
class=3D""><br class=3D""></span></div><div class=3D""><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; =
font-family: Menlo; background-color: rgb(255, 255, 255);" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D""><b class=3D"">jyc@ubuntu18</b></span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">:</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #400bd9" class=3D""><b =
class=3D"">~/GREP/grep-3.6/src</b></span><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">$ =
./grep -E ".*{10,}{10,}{10,}{10,}{10,}"&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; =
font-family: Menlo; background-color: rgb(255, 255, 255);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
font-size: 14px;" class=3D"">grep: stack overflow</span></div></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; =
font-family: Menlo; background-color: rgb(255, 255, 255);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
font-size: 14px;" class=3D""><br class=3D""></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; =
font-family: Menlo; background-color: rgb(255, 255, 255);" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><b class=3D"">Gdb =
information:</b></span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; font-family: Menlo; background-color: =
rgb(255, 255, 255);" class=3D""><span style=3D"font-size: 14px;" =
class=3D""><br class=3D""></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal; font-family: Menlo; =
background-color: rgb(255, 255, 255);" class=3D""><div style=3D"margin: =
0px; font-stretch: normal; line-height: normal; color: rgb(64, 11, =
217);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; font-size: 14px;" =
class=3D"">[----------------------------------registers-------------------=
----------------]</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span style=3D"font-size: =
14px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #2fb41d" class=3D"">RAX</span><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">: =
0x0&nbsp;</span></span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span style=3D"font-size: =
14px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #2fb41d" class=3D"">RBX</span><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">: 0x20 =
(' ')</span></span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span style=3D"font-size: =
14px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #2fb41d" class=3D"">RCX</span><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">: =
</span><span style=3D"font-variant-ligatures: no-common-ligatures; =
color: #400bd9" class=3D"">0x555555799010</span><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> --&gt; =
0x705070701010700&nbsp;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">RDX</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x0&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">RSI</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x8&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; color: =
rgb(64, 11, 217);" class=3D""><span style=3D"font-size: 14px;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
color: #2fb41d" class=3D"">RDI</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">: </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">0x7ffff7b5dc40</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> --&gt; 0x0&nbsp;</span></span></div><div style=3D"margin: =
0px; font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">RBP</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: =
0xffffffffffffffb0&nbsp;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">RSP</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: =
0x7fffff7fefa0&nbsp;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">RIP</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #b42419" =
class=3D"">0x7ffff780637e</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> (&lt;_int_malloc+62&gt;:<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>mov&nbsp; =
&nbsp; QWORD PTR [rsp+0x8],rsi)</span></span></div><div style=3D"margin: =
0px; font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R8 </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x68b1d&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R9 </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x0&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R10</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #400bd9" =
class=3D"">0x555555799010</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""> --&gt; =
0x705070701010700&nbsp;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R11</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x0&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; color: =
rgb(64, 11, 217);" class=3D""><span style=3D"font-size: 14px;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
color: #2fb41d" class=3D"">R12</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">: </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">0x7ffff4d228f8</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> --&gt; 0x0&nbsp;</span></span></div><div style=3D"margin: =
0px; font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R13</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x3458e8&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">R14</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">: 0x0&nbsp;</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; color: =
rgb(64, 11, 217);" class=3D""><span style=3D"font-size: 14px;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
color: #2fb41d" class=3D"">R15</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">: </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">0x55555579e460</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> --&gt; </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">0x7ffff545e010</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> --&gt; 0x2e ('.')</span></span></div><div style=3D"margin: =
0px; font-stretch: normal; line-height: normal; color: rgb(47, 180, =
29);" class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">EFLAGS</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D"">: 0x10202 (</span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">carry</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">parity</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">adjust</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">zero</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">sign</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">trap</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #000000" class=3D""> </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #b42419" =
class=3D""><b class=3D"">INTERRUPT</b></span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">direction</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D""> </span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">overflow</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">)</span></span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; color: rgb(64, 11, 217);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">[-------------------------------------code---------------------=
----------------]</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span style=3D"font-size: =
14px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">&nbsp;&nbsp; 0x7ffff7806373 =
&lt;_int_malloc+51&gt;:</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #e1a7a3" class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>test =
&nbsp; al,al</span></span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; color: rgb(217, 217, 164);" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">&nbsp;&nbsp; 0x7ffff7806375 =
&lt;_int_malloc+53&gt;:</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>jne&nbsp; &nbsp; 0x7ffff7806a58 =
&lt;_int_malloc+1816&gt;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp;&nbsp; 0x7ffff780637b =
&lt;_int_malloc+59&gt;:</span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #e1a7a3" class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>test =
&nbsp; rdi,rdi</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">=3D&gt; =
0x7ffff780637e &lt;_int_malloc+62&gt;:</span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D""><b class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>mov&nbsp; &nbsp; QWORD PTR =
[rsp+0x8],rsi</b></span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">&nbsp;&nbsp; 0x7ffff7806383 &lt;_int_malloc+67&gt;:<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>mov&nbsp; =
&nbsp; r14,rdi</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; color: rgb(159, 160, 28);" class=3D""><span =
style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #000000" =
class=3D"">&nbsp;&nbsp; 0x7ffff7806386 =
&lt;_int_malloc+70&gt;:</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>je &nbsp; &nbsp; 0x7ffff7806a38 =
&lt;_int_malloc+1784&gt;</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">&nbsp;&nbsp; 0x7ffff780638c &lt;_int_malloc+76&gt;:<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>mov&nbsp; =
&nbsp; r15d,ebx</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">&nbsp;&nbsp; 0x7ffff780638f &lt;_int_malloc+79&gt;:<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	</span>shr&nbsp; =
&nbsp; r15d,0x4</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; color: rgb(64, 11, 217);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">[------------------------------------stack---------------------=
----------------]</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal; color: rgb(180, 36, 25);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">Invalid $SP address: 0x7fffff7fefa0</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; color: =
rgb(64, 11, 217);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; font-size: 14px;" =
class=3D"">[--------------------------------------------------------------=
----------------]</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span style=3D"font-size: =
14px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">Legend: </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #b42419" =
class=3D"">code</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">, </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #400bd9" =
class=3D"">data</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">, </span><span =
style=3D"font-variant-ligatures: no-common-ligatures; color: #2fb41d" =
class=3D"">rodata</span><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">, value</span></span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">Stopped =
reason: </span><span style=3D"font-variant-ligatures: =
no-common-ligatures; color: #b42419" =
class=3D"">SIGSEGV</span></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">0x00007ffff780637e in _int_malloc (av=3Dav@entry=3D0x7ffff7b5dc=
40 &lt;main_arena&gt;, bytes=3Dbytes@entry=3D0x8)</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures; =
font-size: 14px;" class=3D"">&nbsp; &nbsp; at =
malloc.c:3557</span></div><div style=3D"margin: 0px; font-stretch: =
normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D"">3557<span class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span>malloc.c: No such file or directory.</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-size: 14px;" class=3D""><br =
class=3D""></span></div><div style=3D"margin: 0px; font-stretch: normal; =
line-height: normal;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures; font-size: 14px;" class=3D""><b =
class=3D"">ASAN:</b></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D""><br class=3D""></span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures; font-size: 14px;" =
class=3D""><div style=3D"margin: 0px; font-stretch: normal; line-height: =
normal;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" =
class=3D"">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</span></div><div=
 style=3D"margin: 0px; font-stretch: normal; line-height: normal; color: =
rgb(180, 36, 25);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""><b class=3D"">=3D=3D12861=3D=3DERROR: =
AddressSanitizer: stack-overflow on address 0x7fffe9c8afc8 (pc =
0x7f9f6989dd2e bp 0x7fffe9c8b060 sp 0x7fffe9c8afd0 =
T0)</b></span></div><div style=3D"margin: 0px; font-stretch: normal; =
line-height: normal;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">&nbsp; &nbsp; #0 0x7f9f6989dd2d&nbsp; =
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0x27d2d)</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #1 0x7f9f69954b0a in __interceptor_malloc =
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdeb0a)</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #2 0x555aa36928ec in re_node_set_alloc =
/home/jyc/GREP/grep-3.6/lib/regex_internal.c:973</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #3 0x555aa369f8cf in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1700</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #4 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #5 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #6 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">=E2=80=A6</span></div><div style=3D"margin: 0px; =
font-stretch: normal; line-height: normal;" class=3D""><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #248 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #249 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">&nbsp; &nbsp; #250 0x555aa369fe25 in calc_eclosure_iter =
/home/jyc/GREP/grep-3.6/lib/regcomp.c:1737</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal; =
min-height: 24px;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D""></span><br class=3D""></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">SUMMARY: AddressSanitizer: stack-overflow =
(/usr/lib/x86_64-linux-gnu/libasan.so.4+0x27d2d)&nbsp;</span></div><div =
style=3D"margin: 0px; font-stretch: normal; line-height: normal;" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">=3D=3D12861=3D=3DABORTING</span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""><br =
class=3D""></span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""><br =
class=3D""></span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""><br =
class=3D""></span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">Thanks,</span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures;" =
class=3D"">Yuancheng</span></div></div></span></div></div></body></html>=

--Apple-Mail=_42DBBDEF-E628-4CCC-99C3-7CDDC87DCCB8--




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.505 (Entity 5.505)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: JIang Yuancheng <0599jiangyc@HIDDEN>
Subject: bug#44538: Acknowledgement (grep -E might exhaust stack space)
Message-ID: <handler.44538.B.16049438761472.ack <at> debbugs.gnu.org>
References: <929253AA-9604-4609-A176-652C12E1D593@HIDDEN>
X-Gnu-PR-Message: ack 44538
X-Gnu-PR-Package: grep
Reply-To: 44538 <at> debbugs.gnu.org
Date: Mon, 09 Nov 2020 17:45:02 +0000

Thank you for filing a new bug report with debbugs.gnu.org.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

Your message has been sent to the package maintainer(s):
 bug-grep@HIDDEN

If you wish to submit further information on this problem, please
send it to 44538 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
44538: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D44538
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to bug-grep@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#44538: grep -E might exhaust stack space
Resent-From: Paul Eggert <eggert@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-grep@HIDDEN
Resent-Date: Sat, 28 Aug 2021 01:27:02 +0000
Resent-Message-ID: <handler.44538.B44538.163011396329296 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 44538
X-GNU-PR-Package: grep
X-GNU-PR-Keywords: 
To: JIang Yuancheng <0599jiangyc@HIDDEN>
Cc: 44538 <at> debbugs.gnu.org, Kaihang Ji <kaihang@HIDDEN>
Received: via spool by 44538-submit <at> debbugs.gnu.org id=B44538.163011396329296
          (code B ref 44538); Sat, 28 Aug 2021 01:27:02 +0000
Received: (at 44538) by debbugs.gnu.org; 28 Aug 2021 01:26:03 +0000
Received: from localhost ([127.0.0.1]:53192 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1mJn6g-0007cR-M3
	for submit <at> debbugs.gnu.org; Fri, 27 Aug 2021 21:26:03 -0400
Received: from zimbra.cs.ucla.edu ([131.179.128.68]:52464)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eggert@HIDDEN>) id 1mJn6a-0007bq-40
 for 44538 <at> debbugs.gnu.org; Fri, 27 Aug 2021 21:26:00 -0400
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 2AB5716005E;
 Fri, 27 Aug 2021 18:25:50 -0700 (PDT)
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Ghh-a8vjulC0; Fri, 27 Aug 2021 18:25:45 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 767BF1600E5;
 Fri, 27 Aug 2021 18:25:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id gFdfl_sEK_gn; Fri, 27 Aug 2021 18:25:45 -0700 (PDT)
Received: from [192.168.1.9] (cpe-172-91-119-151.socal.res.rr.com
 [172.91.119.151])
 by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 4B1EE16005E;
 Fri, 27 Aug 2021 18:25:45 -0700 (PDT)
References: <929253AA-9604-4609-A176-652C12E1D593@HIDDEN>
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
Message-ID: <2eafa490-ac23-edd4-76d5-94d3d82591da@HIDDEN>
Date: Fri, 27 Aug 2021 18:25:44 -0700
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.11.0
MIME-Version: 1.0
In-Reply-To: <929253AA-9604-4609-A176-652C12E1D593@HIDDEN>
Content-Type: multipart/mixed; boundary="------------E9BE978F2CB023162FD1A6AE"
Content-Language: en-US
X-Spam-Score: -2.4 (--)
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: -3.4 (---)

This is a multi-part message in MIME format.
--------------E9BE978F2CB023162FD1A6AE
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 11/9/20 9:34 AM, JIang Yuancheng wrote:
> grep -E =E2=80=9C.*{10,}{10,}{10,}{10,}{10,}=E2=80=9D can exhaust stack=
 space then stack overflow comes out. (Tested on latest version 3.6)

This is a longstanding issue with the regex matcher. I installed the=20
attached patch to document the issue better. Fortunately, the problem is=20
mostly limited to contrived examples.

--------------E9BE978F2CB023162FD1A6AE
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-doc-document-interval-expression-limitations.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="0001-doc-document-interval-expression-limitations.patch"

From f0d97db2a2104c5fd558178713054f3f267623b2 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@HIDDEN>
Date: Fri, 27 Aug 2021 18:20:58 -0700
Subject: [PATCH] doc: document interval expression limitations

* doc/grep.texi (Basic vs Extended, Performance):
Document limitations of interval expressions (Bug#44538).
---
 doc/grep.texi | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/doc/grep.texi b/doc/grep.texi
index b92ecb7..e5b9fd8 100644
--- a/doc/grep.texi
+++ b/doc/grep.texi
@@ -1526,7 +1526,7 @@ before an interval expression's closing @samp{@}}, and an unmatched
 @code{\)} is invalid.
 
 Portable scripts should avoid the following constructs, as
-POSIX says they produce undefined results:
+POSIX says they produce unspecified results:
 
 @itemize @bullet
 @item
@@ -1541,6 +1541,8 @@ Empty alternatives (as in, e.g, @samp{a|}).
 Repetition operators that immediately follow empty expressions,
 unescaped @samp{$}, or other repetition operators.
 @item
+Interval expressions containing repetition counts greater than 255.
+@item
 A backslash escaping an ordinary character (e.g., @samp{\S}),
 unless it is a back-reference.
 @item
@@ -1965,6 +1967,17 @@ bracket expressions like @samp{[a-z]} and @samp{[[=a=]b]}, can be
 surprisingly inefficient due to difficulties in fast portable access to
 concepts like multi-character collating elements.
 
+@cindex interval expressions
+Interval expressions may be implemented internally via repetition.
+For example, @samp{^(a|bc)@{2,4@}$} might be implemented as
+@samp{^(a|bc)(a|bc)((a|bc)(a|bc)?)?$}.  A large repetition count may
+exhaust memory or greatly slow matching.  Even small counts can cause
+problems if cascaded; for example, @samp{grep -E
+".*@{10,@}@{10,@}@{10,@}@{10,@}@{10,@}"} is likely to overflow a
+stack.  Fortunately, regular expressions like these are typically
+artificial, and cascaded repetitions do not conform to POSIX so cannot
+be used in portable programs anyway.
+
 @cindex back-references
 A back-reference such as @samp{\1} can hurt performance significantly
 in some cases, since back-references cannot in general be implemented
-- 
2.30.2


--------------E9BE978F2CB023162FD1A6AE--




Message received at control <at> debbugs.gnu.org:


Received: (at control) by debbugs.gnu.org; 28 Aug 2021 01:28:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Aug 27 21:28:28 2021
Received: from localhost ([127.0.0.1]:53196 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1mJn92-0007fs-Ew
	for submit <at> debbugs.gnu.org; Fri, 27 Aug 2021 21:28:28 -0400
Received: from zimbra.cs.ucla.edu ([131.179.128.68]:52642)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eggert@HIDDEN>) id 1mJn90-0007fg-Sd
 for control <at> debbugs.gnu.org; Fri, 27 Aug 2021 21:28:27 -0400
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 94EC716005E
 for <control <at> debbugs.gnu.org>; Fri, 27 Aug 2021 18:28:21 -0700 (PDT)
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id mdveto5qgfgx for <control <at> debbugs.gnu.org>;
 Fri, 27 Aug 2021 18:28:21 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 05E2A1600E5
 for <control <at> debbugs.gnu.org>; Fri, 27 Aug 2021 18:28:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 6mbG4RTCnvGo for <control <at> debbugs.gnu.org>;
 Fri, 27 Aug 2021 18:28:20 -0700 (PDT)
Received: from [192.168.1.9] (cpe-172-91-119-151.socal.res.rr.com
 [172.91.119.151])
 by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id DB75116005E
 for <control <at> debbugs.gnu.org>; Fri, 27 Aug 2021 18:28:20 -0700 (PDT)
To: control <at> debbugs.gnu.org
From: Paul Eggert <eggert@HIDDEN>
Subject: 44538 is wishlist
Organization: UCLA Computer Science Department
Message-ID: <cfcb0f68-6f33-deb7-dcdd-7c2106578305@HIDDEN>
Date: Fri, 27 Aug 2021 18:28:20 -0700
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
 Thunderbird/78.11.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: control
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: -3.3 (---)

severity 44538 wishlist





Last modified: Sat, 28 Aug 2021 01:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.