[GHC] #7629: segmentation fault in compiled program, involves gtk, selinux

GHC cvs-ghc at haskell.org
Sun Mar 24 02:57:14 CET 2013


#7629: segmentation fault in compiled program, involves gtk, selinux
-----------------------------------------------------------------+----------
    Reporter:  wgmitchener                                       |       Owner:  simonmar     
        Type:  bug                                               |      Status:  infoneeded   
    Priority:  high                                              |   Milestone:  7.6.2        
   Component:  Runtime System                                    |     Version:  7.4.2        
    Keywords:  segmentation fault, multithreading, selinux, gtk  |          Os:  Linux        
Architecture:  x86                                               |     Failure:  Runtime crash
  Difficulty:  Unknown                                           |    Testcase:               
   Blockedby:                                                    |    Blocking:               
     Related:                                                    |  
-----------------------------------------------------------------+----------

Comment(by wgmitchener):

 On Fedora 17, with GHC 7.4.2, I tried running valgrind on the Main program
 from ghc-bug-002.zip with this result:

 {{{
 valgrind --leak-check=full ./Main
 ==30226== Memcheck, a memory error detector
 ==30226== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
 ==30226== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright
 info
 ==30226== Command: ./Main
 ==30226==
 Setting callback
 set_callback: at top
 set_callback: p_callback = (nil)
 set_callback: callback_data = 0
 set_callback: p_finalizer = (nil)
 set_callback: new pointer values:
 set_callback: p_callback = 0x401102c
 set_callback: callback_data = 10
 set_callback: p_finalizer = 0x401100c
 set_callback: done
 Invoking callback
 invoke_callback: at top
 invoke_callback: p_callback = 0x401102c
 invoke_callback: callback_data = 10
 invoke_callback: p_finalizer = 0x401100c
 invoke_callback: calling callback
 ==30226== Invalid read of size 1
 ==30226==    at 0x822D5E8: freeSignalHandlers (Signals.c:90)
 ==30226==  Address 0xa is not stack'd, malloc'd or (recently) free'd
 ==30226==
 ==30226==
 ==30226== Process terminating with default action of signal 11 (SIGSEGV)
 ==30226==  Access not within mapped region at address 0xA
 ==30226==    at 0x822D5E8: freeSignalHandlers (Signals.c:90)
 ==30226==  If you believe this happened as a result of a stack
 ==30226==  overflow in your program's main thread (unlikely but
 ==30226==  possible), you can try to increase the size of the
 ==30226==  main thread stack using the --main-stacksize= flag.
 ==30226==  The main thread stack size used in this run was 8388608.
 ==30226==
 ==30226== HEAP SUMMARY:
 ==30226==     in use at exit: 40,622 bytes in 32 blocks
 ==30226==   total heap usage: 52 allocs, 20 frees, 43,076 bytes allocated
 ==30226==
 ==30226== LEAK SUMMARY:
 ==30226==    definitely lost: 0 bytes in 0 blocks
 ==30226==    indirectly lost: 0 bytes in 0 blocks
 ==30226==      possibly lost: 0 bytes in 0 blocks
 ==30226==    still reachable: 40,622 bytes in 32 blocks
 ==30226==         suppressed: 0 bytes in 0 blocks
 ==30226== Reachable blocks (those to which a pointer was found) are not
 shown.
 ==30226== To see them, rerun with: --leak-check=full --show-reachable=yes
 ==30226==
 ==30226== For counts of detected and suppressed errors, rerun with: -v
 ==30226== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
 Segmentation fault
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7629#comment:18>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the ghc-tickets mailing list