#1882: GHC's vfork() silently dies, which renders compiling impossible
------------------------------------------+---------------------------------
Reporter: raw | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.8.1
Severity: blocker | Resolution:
Keywords: waitpid, vfork, ghc, hang | Testcase:
Architecture: x86 | Os: Unknown
------------------------------------------+---------------------------------
Comment (by raw):
This has now been confirmed with both ghc-6.8.1-i386-unknown-linux.tar.bz2
and a source build.
Additionally ghc-pkg shows the same weird behavior allthough for a
different(?) reason:
`% ghc-pkg list
/usr/local/lib/ghc-6.8.1/package.conf:
Cabal-1.2.2.0, GLUT-2.1.1.1, HUnit-1.2.0.0, OpenGL-2.2.1.1,
QuickCheck-1.1.0.0, X11-1.2.3.1, array-0.1.0.0, base-3.0.0.0,
bytestring-0.9.0.1, cgi-3001.1.5.1, containers-0.1.0.0,
directory-1.0.0.0, fgl-5.4.1.1, filepath-1.1.0.0, (ghc-6.8.1),
haskell-src-1.0.1.1, haskell98-1.0.1.0, hpc-0.5.0.0, html-1.0.1.1,
mtl-1.1.0.0, network-2.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0,
packedstring-0.1.0.0, parallel-1.0.0.0, parsec-2.1.0.0,
pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0, readline-1.0.1.0,
regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.1,
rts-1.0, stm-2.1.1.0, template-haskell-2.2.0.0, time-1.1.2.0,
unix-2.2.0.0, xhtml-3000.0.2.1
/home/raw/.ghc/i386-linux-6.8.1/package.conf:`[[BR]]
''under normal circumstances the users' pkg are shown here. however it
just hangs and shows nothing.''
strace's opinion:[[BR]]
open("/usr/local/lib/ghc-6.8.1/package.conf",
O_RDONLY|O_NOCTTY|O_NONBLOCK|O_LARGEFILE) = 3[[BR]]
fstat64(3, {st_mode=S_IFREG|0755, st_size=70677, ...}) = 0[[BR]]
fcntl64(3, F_GETFL) = 0x8800 (flags
O_RDONLY|O_NONBLOCK|O_LARGEFILE)[[BR]]
fcntl64(3, F_SETFL, O_RDONLY|O_NONBLOCK|O_LARGEFILE) = 0[[BR]]
fstat64(3, {st_mode=S_IFREG|0755, st_size=70677, ...}) = 0[[BR]]
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfb0f1d8) = -1 ENOTTY
(Inappropriate ioctl for device)[[BR]]
read(3, "[InstalledPackageInfo {package ="..., 8192) = 8192[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---[[BR]]
sigreturn() = ? (mask now [])[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
''...repeated over and over...''[[BR]]
write(1, "/home/raw/.ghc/i386-linux-6.8.1/"..., 46) = 46[[BR]]
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---[[BR]]
sigreturn() = ? (mask now [])[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0[[BR]]
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0[[BR]]
--- SIGVTALRM (Virtual timer expired) @ 0 (0) ---[[BR]]
sigreturn() = ? (mask now [])[[BR]]
''...repeat as needed...''[[BR]]
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/1882#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs