Bug#973623: stack overflows with ghc on ppc64el

Steve Langasek steve.langasek at canonical.com
Mon Nov 2 16:11:05 GMT 2020


Package: ghc
Version: 8.8.4-1
Severity: serious
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu hirsute

Dear maintainers,

We have started doing mass-rebuilds of the haskell stack in Ubuntu for ghc
8.8.4-1 and have found a pattern of failures on ppc64el where in some cases
the build fails because the doctest runs the just-built binary, and the
just-built binary triggers a stack overflow due to an infinitely recursive
call of some sort.

  https://people.canonical.com/~ubuntu-archive/transitions/html/ghc.html

I have reproduced this on plummer with haskell-network-byte-order, so it is
not an Ubuntu-specific issue.

gdb output looks like:

$ gdb ./dist-ghc/build/doctest/doctest
[...]
Reading symbols from ./dist-ghc/build/doctest/doctest...
(No debugging symbols found in ./dist-ghc/build/doctest/doctest)
(gdb) run
Starting program: /tmp/haskell-network-byte-order-0.1.5/dist-ghc/build/doctest/doctest 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/powerpc64le-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x0000000014dc8acc in __libc_csu_init ()
(gdb) bt
#0  0x0000000014dc8acc in __libc_csu_init ()
#1  0x0000000014dc8b0c in __libc_csu_init ()
#2  0x0000000014dc8b0c in __libc_csu_init ()
#3  0x0000000014dc8b0c in __libc_csu_init ()
#4  0x0000000014dc8b0c in __libc_csu_init ()
#5  0x0000000014dc8b0c in __libc_csu_init ()
#6  0x0000000014dc8b0c in __libc_csu_init ()
#7  0x0000000014dc8b0c in __libc_csu_init ()
#8  0x0000000014dc8b0c in __libc_csu_init ()
#9  0x0000000014dc8b0c in __libc_csu_init ()
#10 0x0000000014dc8b0c in __libc_csu_init ()
#11 0x0000000014dc8b0c in __libc_csu_init ()
#12 0x0000000014dc8b0c in __libc_csu_init ()
#13 0x0000000014dc8b0c in __libc_csu_init ()
#14 0x0000000014dc8b0c in __libc_csu_init ()
#15 0x0000000014dc8b0c in __libc_csu_init ()
#16 0x0000000014dc8b0c in __libc_csu_init ()
#17 0x0000000014dc8b0c in __libc_csu_init ()
#18 0x0000000014dc8b0c in __libc_csu_init ()
#19 0x0000000014dc8b0c in __libc_csu_init ()
#20 0x0000000014dc8b0c in __libc_csu_init ()
#21 0x0000000014dc8b0c in __libc_csu_init ()
#22 0x0000000014dc8b0c in __libc_csu_init ()
--Type <RET> for more, q to quit, c to continue without paging--
[...]
#93284 0x0000000014dc8b0c in __libc_csu_init ()
#93285 0x0000000014dc8b0c in __libc_csu_init ()
#93286 0x0000000014dc8b0c in __libc_csu_init ()
#93287 0x0000000014dc8b0c in __libc_csu_init ()
#93288 0x0000000014dc8b0c in __libc_csu_init ()
#93289 0x0000000014dc8b0c in __libc_csu_init ()
#93290 0x0000000014dc8b0c in __libc_csu_init ()
#93291 0x0000000014dc8b0c in __libc_csu_init ()
#93292 0x0000000014dc8b0c in __libc_csu_init ()
#93293 0x0000000014dc8b0c in __libc_csu_init ()
#93294 0x0000000014dc8b0c in __libc_csu_init ()
#93295 0x0000000014dc8b0c in __libc_csu_init ()
Killed
$

valgrind shows nothing interesting prior to hitting the stack overflow.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slangasek at ubuntu.com                                     vorlon at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-haskell-maintainers/attachments/20201102/7d69bcb8/attachment.sig>


More information about the Pkg-haskell-maintainers mailing list