Skip to content

double free or corruption (TEST=T5644 WAY=threaded1)

$ make test TEST=T5644 WAY=threaded1
...
=====> T5644(threaded1) 1 of 1 [0, 0, 0] 
cd "./rts/T5644/T5644.run" &&  "/opt/ghc/head/bin/ghchead" --make -o T5644 heap-overflow.hs -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -fno-ghci-history  -threaded -debug -O > T5644.comp.stderr 2>&1
cd "./rts/T5644/T5644.run" && ./T5644  +RTS -M20m -RTS  </dev/null > T5644.run.stdout 2> T5644.run.stderr
*** Error in `./T5644': double free or corruption (fasttop): 0x00007f1e34000910 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x77725)[0x7f1e495b7725]
/lib/x86_64-linux-gnu/libc.so.6(+0x7ff4a)[0x7f1e495bff4a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f1e495c3abc]
./T5644[0x48d2dd]
./T5644[0x492d4b]
./T5644[0x490ffe]
./T5644[0x493ca7]
./T5644[0x48cde1]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76fa)[0x7f1e499106fa]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f1e49646b5d]
======= Memory map: ========
00400000-00518000 r-xp 00000000 b3:01 1458905                            /home/thomas/ghc-devel2/testsuite/tests/rts/T5644/T5644.run/T5644
00718000-0071b000 r--p 00118000 b3:01 1458905                            /home/thomas/ghc-devel2/testsuite/tests/rts/T5644/T5644.run/T5644
0071b000-00727000 rw-p 0011b000 b3:01 1458905                            /home/thomas/ghc-devel2/testsuite/tests/rts/T5644/T5644.run/T5644
00727000-0072a000 rw-p 00000000 00:00 0 
026cd000-0270f000 rw-p 00000000 00:00 0                                  [heap]
200000000-200200000 rw-p 00000000 00:00 0 
200200000-201400000 ---p 00000000 00:00 0 
201400000-201600000 rw-p 00000000 00:00 0 
201600000-10200100000 ---p 00000000 00:00 0 
7f1e34000000-7f1e34021000 rw-p 00000000 00:00 0 
7f1e34021000-7f1e38000000 ---p 00000000 00:00 0 
7f1e38000000-7f1e38021000 rw-p 00000000 00:00 0 
7f1e38021000-7f1e3c000000 ---p 00000000 00:00 0 
7f1e3c000000-7f1e3c021000 rw-p 00000000 00:00 0 
7f1e3c021000-7f1e40000000 ---p 00000000 00:00 0 
7f1e42ffe000-7f1e42fff000 ---p 00000000 00:00 0 
7f1e42fff000-7f1e437ff000 rw-p 00000000 00:00 0                          [stack:5323]
7f1e437ff000-7f1e43800000 ---p 00000000 00:00 0 
7f1e43800000-7f1e44000000 rw-p 00000000 00:00 0                          [stack:5322]
7f1e44000000-7f1e44021000 rw-p 00000000 00:00 0 
7f1e44021000-7f1e48000000 ---p 00000000 00:00 0 
7f1e48328000-7f1e4833e000 r-xp 00000000 b3:01 920599                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1e4833e000-7f1e4853d000 ---p 00016000 b3:01 920599                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1e4853d000-7f1e4853e000 rw-p 00015000 b3:01 920599                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7f1e4853e000-7f1e4853f000 ---p 00000000 00:00 0 
7f1e4853f000-7f1e48d3f000 rw-p 00000000 00:00 0                          [stack:5321]
7f1e48d3f000-7f1e48d40000 ---p 00000000 00:00 0 
7f1e48d40000-7f1e49540000 rw-p 00000000 00:00 0                          [stack:5320]
7f1e49540000-7f1e49700000 r-xp 00000000 b3:01 923095                     /lib/x86_64-linux-gnu/libc-2.23.so
7f1e49700000-7f1e498ff000 ---p 001c0000 b3:01 923095                     /lib/x86_64-linux-gnu/libc-2.23.so
7f1e498ff000-7f1e49903000 r--p 001bf000 b3:01 923095                     /lib/x86_64-linux-gnu/libc-2.23.so
7f1e49903000-7f1e49905000 rw-p 001c3000 b3:01 923095                     /lib/x86_64-linux-gnu/libc-2.23.so
7f1e49905000-7f1e49909000 rw-p 00000000 00:00 0 
7f1e49909000-7f1e49921000 r-xp 00000000 b3:01 923093                     /lib/x86_64-linux-gnu/libpthread-2.23.so
7f1e49921000-7f1e49b20000 ---p 00018000 b3:01 923093                     /lib/x86_64-linux-gnu/libpthread-2.23.so
7f1e49b20000-7f1e49b21000 r--p 00017000 b3:01 923093                     /lib/x86_64-linux-gnu/libpthread-2.23.so
7f1e49b21000-7f1e49b22000 rw-p 00018000 b3:01 923093                     /lib/x86_64-linux-gnu/libpthread-2.23.so
7f1e49b22000-7f1e49b26000 rw-p 00000000 00:00 0 
7f1e49b26000-7f1e49b29000 r-xp 00000000 b3:01 923097                     /lib/x86_64-linux-gnu/libdl-2.23.so
7f1e49b29000-7f1e49d28000 ---p 00003000 b3:01 923097                     /lib/x86_64-linux-gnu/libdl-2.23.so
7f1e49d28000-7f1e49d29000 r--p 00002000 b3:01 923097                     /lib/x86_64-linux-gnu/libdl-2.23.so
7f1e49d29000-7f1e49d2a000 rw-p 00003000 b3:01 923097                     /lib/x86_64-linux-gnu/libdl-2.23.so
7f1e49d2a000-7f1e49d31000 r-xp 00000000 b3:01 923085                     /lib/x86_64-linux-gnu/librt-2.23.so
7f1e49d31000-7f1e49f30000 ---p 00007000 b3:01 923085                     /lib/x86_64-linux-gnu/librt-2.23.so
7f1e49f30000-7f1e49f31000 r--p 00006000 b3:01 923085                     /lib/x86_64-linux-gnu/librt-2.23.so
7f1e49f31000-7f1e49f32000 rw-p 00007000 b3:01 923085                     /lib/x86_64-linux-gnu/librt-2.23.so
7f1e49f32000-7f1e4a03a000 r-xp 00000000 b3:01 922754                     /lib/x86_64-linux-gnu/libm-2.23.so
7f1e4a03a000-7f1e4a239000 ---p 00108000 b3:01 922754                     /lib/x86_64-linux-gnu/libm-2.23.so
7f1e4a239000-7f1e4a23a000 r--p 00107000 b3:01 922754                     /lib/x86_64-linux-gnu/libm-2.23.so
7f1e4a23a000-7f1e4a23b000 rw-p 00108000 b3:01 922754                     /lib/x86_64-linux-gnu/libm-2.23.so
7f1e4a23b000-7f1e4a2ba000 r-xp 00000000 b3:01 920765                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7f1e4a2ba000-7f1e4a4b9000 ---p 0007f000 b3:01 920765                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7f1e4a4b9000-7f1e4a4ba000 r--p 0007e000 b3:01 920765                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7f1e4a4ba000-7f1e4a4bb000 rw-p 0007f000 b3:01 920765                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.0
7f1e4a4bb000-7f1e4a4e1000 r-xp 00000000 b3:01 923087                     /lib/x86_64-linux-gnu/ld-2.23.so
7f1e4a521000-7f1e4a6b9000 r--p 00000000 b3:01 934811                     /usr/lib/locale/locale-archive
7f1e4a6b9000-7f1e4a6be000 rw-p 00000000 00:00 0 
7f1e4a6dd000-7f1e4a6e0000 rw-p 00000000 00:00 0 
7f1e4a6e0000-7f1e4a6e1000 r--p 00025000 b3:01 923087                     /lib/x86_64-linux-gnu/ld-2.23.so
7f1e4a6e1000-7f1e4a6e2000 rw-p 00026000 b3:01 923087                     /lib/x86_64-linux-gnu/ld-2.23.so
7f1e4a6e2000-7f1e4a6e3000 rw-p 00000000 00:00 0 
7ffc3afc6000-7ffc3afe7000 rw-p 00000000 00:00 0                          [stack]
7ffc3aff2000-7ffc3aff4000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Wrong exit code (expected 251 , actual 134 )
Stdout:

Stderr:
T5644: Heap exhausted;
T5644: Current maximum heap size is 20971520 bytes (20 MB).
T5644: Use `+RTS -M<size>' to increase it.
Aborted (core dumped)

*** unexpected failure for T5644(threaded1)

Similar result for WAY=threaded2. No problems with ghc-8.0.1. I'm using ghc-8.1.20160610 (c88f31a0).

Trac metadata
Trac field Value
Version 8.1
Type Bug
TypeOfFailure OtherFailure
Priority high
Resolution Unresolved
Component Runtime System
Test case
Differential revisions
BlockedBy
Related
Blocking
CC simonmar
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information