Parallel make with -j0 and hs-boot leads to floating point exception
When I run #1012 (closed)##12062 (closed) with ghc-8.0 --make ModuleB.hs -j0 -fforce-recomp
(the -j0
is important) I get a Floating point exception (core dumped)
.
When I run under GDB, I get:
(gdb) r
Starting program: /srv/code/ghc-8.0.0.20160204/usr/lib/ghc-8.0.0.20160204/bin/ghc -B/home/ezyang/Dev/ghc-8.0.0.20160204/usr/lib/ghc-8.0.0.20160204 --make ModuleB.hs -j0 -fforce-recomp
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffecd7f700 (LWP 28877)]
[New Thread 0x7fffe7fff700 (LWP 28878)]
[New Thread 0x7fffe77fe700 (LWP 28879)]
[1 of 4] Compiling ModuleA[boot] ( ModuleA.hs-boot, ModuleA.o-boot )
[2 of 4] Compiling ModuleC ( ModuleC.hs, ModuleC.o )
[3 of 4] Compiling ModuleA ( ModuleA.hs, ModuleA.o )
[4 of 4] Compiling ModuleB ( ModuleB.hs, ModuleB.o )
Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread 0x7fffecd7f700 (LWP 28877)]
schedule (initialCapability=<optimized out>, task=task@entry=0x7b6310) at rts/Schedule.c:373
373 rts/Schedule.c: No such file or directory.
(gdb) bt
#0 schedule (initialCapability=<optimized out>, task=task@entry=0x7b6310) at rts/Schedule.c:373
#1 0x00007fffed65018c in scheduleWorker (cap=<optimized out>, task=0x7b6310) at rts/Schedule.c:2378
#2 0x00007ffff738a6aa in start_thread (arg=0x7fffecd7f700) at pthread_create.c:333
#3 0x00007fffed14fe9d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
I once got a different error running this:
warning: Corrupted shared library list: 0x7e1ee0 != 0x7ffff7ffd9d8
Looking at the code which is a capabilities[cap->no % enabled_capabilities]
, I guess this is just something goofy, like GHC not rejecting -j0
and then however we're setting the capabilities not checking this case.
Trac metadata
Trac field | Value |
---|---|
Version | 8.0.1-rc2 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | low |
Resolution | Unresolved |
Component | Runtime System |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | simonmar |
Operating system | |
Architecture |