#4967: internal error: stg_ap_v_ret on forkProcess + executeFile
-------------------------------+--------------------------------------------
    Reporter:  udoprog         |       Owner:                          
        Type:  bug             |      Status:  new                     
    Priority:  normal          |   Component:  Compiler                
     Version:  6.12.1          |    Keywords:  forkProcess stg_ap_v_ret
    Testcase:                  |   Blockedby:                          
          Os:  Linux           |    Blocking:                          
Architecture:  x86_64 (amd64)  |     Failure:  None/Unknown            
-------------------------------+--------------------------------------------
 I've so far been unable to reproduce the bug, due to my inexperience in
 haskell as a Language, so I apoligize beforehand about the amount of code
 related. On request I will keep trying to isolate it and update this
 ticket, or If one of you point out some obvious ignorance on my part.

 To reproduce this problem, build the project at:
 https://github.com/udoprog/gabriel/tree/unix-experimental

 Create a new directory:

 {{{
 #> mkdir test
 #> cd test
 }}}


 Run a test application in gabriel:

 {{{
 #> gabriel -- cat
 gabriel[cat][28108]: STARTING cat
 gabriel[cat][28108]: EXITED Terminated 15
 gabriel[cat][28108]: WAITING 5 seconds
 gabriel[cat][28108]: STARTING cat
 gabriel: internal error: stg_ap_v_ret
     (GHC version 6.12.1 for x86_64_unknown_linux)
     Please report this as a GHC bug:
 http://www.haskell.org/ghc/reportabug
 gabriel[cat][28108]: EXITED Terminated 6
 gabriel[cat][28108]: WAITING 5 seconds
 ^Cgabriel[cat][28108]: Nu child process running
 gabriel[cat][28108]: WAIT was Interrupted
 gabriel[cat][28108]: Shutting Down
 }}}

 Gabriel will create a subprocess of 'cat' and wrap it, the 'EXITED
 Terminated 15' is reproduced by finding out the pid of the child process
 'ps faux | grep cat' and killing it 'kill <pid>'. The point is that
 gabriel should restart the process, but unfortunately that is not what
 happens.

 Other than that, I opted to implement my own fork/exec over the
 System.Process(createProcess) which can be found in Gabriel/SubProcess.hs
 since I wanted to be able to send custom signals to the process. I believe
 that the error can somehow be reproduced by focusing on this code.

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

_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to