SEGFAULT in stg_ap_ppp_info()
Running a multi-threaded server application under stress testing, eventually get one of the following errors:
app: internal error: stg_ap_ppp_ret
Please report this as a bug to glasgow-haskell-bugs@haskell.org,
or http://www.sourceforge.net/projects/ghc/
or
SEGFAULT in stg_ap_ppp_info()
This was observed in GHC 6.4, and is still present after upgrading to 6.4.2. gdb stack trace below:
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 27919)]
[New Thread 32769 (LWP 27922)]
[New Thread 16386 (LWP 27923)]
[New Thread 32771 (LWP 27924)]
[New Thread 49156 (LWP 27925)]
[New Thread 65541 (LWP 27929)]
[New Thread 81926 (LWP 28021)]
[New Thread 98311 (LWP 28864)]
[New Thread 114696 (LWP 3114)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 32771 (LWP 27924)]
0x08338c8d in stg_ap_ppp_info ()
(gdb) thread apply all where
Thread 9 (Thread 114696 (LWP 3114)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083b4180 in returning_worker_cond ()
#5 0x083bf368 in in_haskell ()
#6 0x00000000 in ?? ()
Thread 8 (Thread 98311 (LWP 28864)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083b4180 in returning_worker_cond ()
#5 0x083bf368 in in_haskell ()
#6 0x00000000 in ?? ()
Thread 7 (Thread 81926 (LWP 28021)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083b4180 in returning_worker_cond ()
#5 0x083bf368 in in_haskell ()
#6 0x00000000 in ?? ()
Thread 6 (Thread 65541 (LWP 27929)):
#0 0x004e1c21 in select () from /lib/i686/libc.so.6
#1 0x083bf888 in MainCapability ()
#2 0x0089c91c in ?? ()
#3 0x006f5778 in ?? ()
#4 0x00000000 in ?? ()
Thread 5 (Thread 49156 (LWP 27925)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083b4180 in returning_worker_cond ()
#5 0x083bf368 in in_haskell ()
#6 0x044d6bc0 in ?? ()
#7 0x0014aff4 in ?? () from /lib/i686/libpthread.so.0
#8 0x00000001 in ?? ()
#9 0x083bf368 in in_haskell ()
#10 0x030d8e48 in ?? ()
#11 0x0833a93e in waitForCapability ()
#12 0x00000000 in ?? ()
Thread 4 (Thread 32771 (LWP 27924)):
#0 0x08338c8d in stg_ap_ppp_info ()
#1 0x00692c38 in ?? ()
#2 0x00148464 in write () from /lib/i686/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#3 0x00000001 in ?? ()
#4 0x006f5800 in ?? ()
#5 0x00000001 in ?? ()
#6 0x00000002 in ?? ()
#7 0x006f57b8 in ?? ()
#8 0x0014d41c in wait_node_free_list () from /lib/i686/libpthread.so.0
#9 0x083c91e0 in ?? ()
#10 0x00000001 in ?? ()
#11 0x026d4a80 in ?? ()
#12 0x00000000 in ?? ()
Thread 3 (Thread 16386 (LWP 27923)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083b4180 in returning_worker_cond ()
#5 0x083bf368 in in_haskell ()
#6 0x00000000 in ?? ()
Thread 2 (Thread 32769 (LWP 27922)):
#0 0x004df82a in poll () from /lib/i686/libc.so.6
#1 0x001424c0 in __pthread_manager () from /lib/i686/libpthread.so.0
#2 0x00142e95 in __pthread_manager_event () from /lib/i686/libpthread.so.0
#3 0x004e8ffa in clone () from /lib/i686/libc.so.6
Thread 1 (Thread 16384 (LWP 27919)):
#0 0x001450f4 in __pthread_sigsuspend () from /lib/i686/libpthread.so.0
#1 0x00144728 in __pthread_wait_for_restart_signal () from /lib/i686/libpthread.so.0
#2 0x00140fab in pthread_cond_wait@GLIBC_2.0 () from /lib/i686/libpthread.so.0
#3 0x08342246 in waitCondition ()
#4 0x083c53a4 in ?? ()
#5 0x083bf368 in in_haskell ()
#6 0x00000000 in ?? ()