[GHC] #8928: 64-bit statically linked binary consumes all memory while spinning on 'SIGVTALRM's

GHC ghc-devs at haskell.org
Tue Mar 25 17:37:41 UTC 2014


#8928: 64-bit statically linked binary consumes all memory while spinning on
'SIGVTALRM's
----------------------------------+----------------------------------
       Reporter:  cswarth         |             Owner:
           Type:  bug             |            Status:  new
       Priority:  normal          |         Milestone:
      Component:  Compiler        |           Version:  7.6.3
       Keywords:                  |  Operating System:  Linux
   Architecture:  x86_64 (amd64)  |   Type of failure:  Runtime crash
     Difficulty:  Unknown         |         Test Case:
     Blocked By:                  |          Blocking:
Related Tickets:                  |
----------------------------------+----------------------------------
 I actually have no idea if this is a haskell bug or not, but since the
 earlier reported symptoms are similar, and the "pandoc" program is
 compiled with GHC, I thought I would report it here as well.

 This situation sounds exactly like
 [https://ghc.haskell.org/trac/ghc/ticket/7344 this bug] reported 17 months
 ago.

 Symptoms are 'pandoc --version' hangs and consumes memory until the
 process eventually dies with an OOM error.   This seems to only happen
 when LC_ALL is set in the environment, and only when running the
 statically linked pandoc.

 {{{
 $ uname -a
 Linux server 3.5.0-43-generic #66~precise1-Ubuntu SMP Thu Oct 24 14:52:23
 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

 $ wget https://s3.amazonaws.com/rstudio-buildtools/pandoc-1.12.3.zip

 $ unzip pandoc-1.12.3.zip

 $ file pandoc-1.12.3/linux/debian/x86_64/pandoc
 pandoc-1.12.3/linux/debian/x86_64/pandoc: ELF 64-bit LSB executable,
 x86-64, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.15,
 BuildID[sha1]=0x9bc69f51b7c213cf58e9f8692f4b46f9f05fb723, not stripped

 $ LC_ALL=C strace -e trace=open,close
 pandoc-1.12.3/linux/debian/x86_64/pandoc --version
 open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No such
 file or directory)
 open("/usr/lib/gconv/gconv-modules", O_RDONLY) = -1 ENOENT (No such file
 or directory)
 --- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
 --- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
 --- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
 --- SIGVTALRM (Virtual timer expired) @ 0 (0) ---
 ^C--- SIGINT (Interrupt) @ 0 (0) ---
 }}}

 Note this problem does not occur if I run an older dynamically linked
 pandoc under the same circumstances.

 {{{
 $ /usr/bin/pandoc --version
 pandoc 1.9.1.1
 Compiled with citeproc-hs 0.3.4, texmath 0.6.0.3, highlighting-kate
 0.5.0.5.
 Syntax highlighting is supported for the following languages:
     Actionscript, Ada, Alert, Alert_indent, Apache, Asn1, Asp, Awk, Bash,
     Bibtex, Boo, C, Changelog, Clojure, Cmake, Coffeescript, Coldfusion,
     Commonlisp, Cpp, Cs, Css, D, Diff, Djangotemplate, Doxygen, Dtd,
 Eiffel, ...

 }}}

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8928>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list