platform-testers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [platform-testers] bug#21755: new snapshot available: grep-2.21.82-f


From: Bruce Dubbs
Subject: Re: [platform-testers] bug#21755: new snapshot available: grep-2.21.82-fbc5
Date: Sun, 25 Oct 2015 21:50:42 -0500
User-agent: Mozilla/5.0 (X11; Linux i686; rv:35.0) Gecko/20100101 Firefox/35.0 SeaMonkey/2.32

Jim Meyering wrote:

Thanks for investigating.
I wonder why your libpcre-8.37 needs so much stack and mine
(built from the release tarball by me, with no patch) segfaults only
when I restrict stack to less than about 50 KB.
I.e.,this exits with status 1:

   ( ulimit -s 50; LC_ALL=C src/grep -P -n '^([/](?!/)|[^/])*~/.*' pcrejit.txt )

but changing to a ulimit of 40 KB, it consistently segfaults.
That also jibes with what valgrind --tool=massif --stacks=yes reports.

$ valgrind --tool=massif --stacks=yes ./grep -P -n '^([/](?!/)|[^/])*~/.*' pcrejit.txt
==27974== Massif, a heap profiler
==27974== Copyright (C) 2003-2015, and GNU GPL'd, by Nicholas Nethercote
==27974== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==27974== Command: ./grep -P -n ^([/](?!/)|[^/])*~/.* pcrejit.txt
==27974==
==27974== Stack overflow in thread #1: can't grow stack to 0xffe801000
==27974==
==27974== Process terminating with default action of signal 11 (SIGSEGV)
==27974==  Access not within mapped region at address 0xFFE801E70
==27974== Stack overflow in thread #1: can't grow stack to 0xffe801000
==27974==    at 0x4E3E700: ??? (in /lib/libpcre.so.1.2.5)
==27974==  If you believe this happened as a result of a stack
==27974==  overflow in your program's main thread (unlikely but
==27974==  possible), you can try to increase the size of the
==27974==  main thread stack using the --main-stacksize= flag.
==27974==  The main thread stack size used in this run was 8388608.
==27974== Stack overflow in thread #1: can't grow stack to 0xffe801000
==27974==
==27974== Process terminating with default action of signal 11 (SIGSEGV)
==27974==  Access not within mapped region at address 0xFFE801E58
==27974== Stack overflow in thread #1: can't grow stack to 0xffe801000
==27974==    at 0x4A24640: _vgnU_freeres (vg_preloaded.c:58)
==27974==  If you believe this happened as a result of a stack
==27974==  overflow in your program's main thread (unlikely but
==27974==  possible), you can try to increase the size of the
==27974==  main thread stack using the --main-stacksize= flag.
==27974==  The main thread stack size used in this run was 8388608.
==27974==
Segmentation fault

$ ulimit -s unlimited
$ valgrind --tool=massif --main-stacksize=21000000 --stacks=yes ./grep -P -n '^([/](?!/)|[^/])*~/.*' pcrejit.txt
==28034== Massif, a heap profiler
==28034== Copyright (C) 2003-2015, and GNU GPL'd, by Nicholas Nethercote
==28034== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==28034== Command: ./grep -P -n ^([/](?!/)|[^/])*~/.* pcrejit.txt
==28034==
==28034==

But if I change --main-stacksize to 20000000 it segfaults.

Using libpcre.so.1.2.5 (pcre-8.37).

  -- Bruce








reply via email to

[Prev in Thread] Current Thread [Next in Thread]