
Dear threads@freebsd.org (and others), This is relating to the problems we're experiencing with GHC's threaded runtime on FreeBSD (see context below). GHC itself, which is a Haskell program, when compiled with itself and linked against GHC's threaded runtime, sometimes hangs eating 100% CPU. This happens when it is linked with -pthreads, I haven't seen it when linking with -lthr. If I attach using gdb to a hung process, I see this: (gdb) where #0 0x2897146b in pthread_testcancel () from /usr/lib/libpthread.so.2 #1 0x28972499 in __error () from /usr/lib/libpthread.so.2 #2 0x2895e6ba in sigaction () from /usr/lib/libpthread.so.2 #3 0x087ea6b4 in runProcess (args=0x29091758, workingDirectory=0x0, environment=0x0, fdStdInput=0, fdStdOutput=1, fdStdError=2, set_inthandler=1, inthandler=0, set_quithandler=1, quithandler=0) at runProcess.c:61 #4 0x0879b3d0 in s3ja_info () Now, runProcess() is part of our libraries. It is basically doing a fork/exec combo, with some sigaction()s and other stuff in between. As I understand the POSIX spec, it should be safe to do sigaction() in the child of a fork() in a multithreaded process. So I'm surprised to see pthread_testcancel on the stack there. This is about all I've managed to extract. gdb is having difficulty looking at the other threads: (gdb) info thr * 5 LWP 100331 0x2897146b in pthread_testcancel () from /usr/lib/libpthread.so.2 4 Thread 0x8920000 (LWP 100278) Cannot get lwp 100278 registers: Operation not permitted for unknown reasons. Any help would be appreciated... Cheers, Simon On 07 August 2006 18:31, Robert Watson wrote:
Dear many,
I pinged the FreeBSD threads list about the previously mentioned problem, and was sent this patch by Dan Eischen. The FreeBSD threads mailing list is extremely responsive to bug reports; my recommendation is that we direct future specific bug reports, as well as any feedback on this patch, to that list.
Thanks,
Robert N M Watson Computer Laboratory University of Cambridge
---------- Forwarded message ---------- Date: Mon, 7 Aug 2006 13:15:21 -0400 (EDT) From: Daniel Eischen
To: Robert Watson Cc: threads@freebsd.org Subject: Re: GHC 6.4.3 on FreeBSD (fwd) On Mon, 7 Aug 2006, Robert Watson wrote:
I've been talking to the Haskell folk about problems they've had getting their threaded runtime running on FreeBSD. Here's one of their problem reports. Since I'm not up on how threads and signals are supposed to act, I can't confirm the below is a bug, of course, but figured you (experts) would be able to respond better.
Try this patch.
participants (1)
-
Simon Marlow