[GHC] #11181: Program hands forever in sched_yield() / yield() unless -N is limited

GHC ghc-devs at haskell.org
Tue Dec 8 19:46:09 UTC 2015


#11181: Program hands forever in sched_yield() / yield() unless -N is limited
---------------------------------------+----------------------------------
           Reporter:  patrick_thomson  |             Owner:
               Type:  bug              |            Status:  new
           Priority:  normal           |         Milestone:
          Component:  Compiler         |           Version:  7.10.2
           Keywords:                   |  Operating System:  Solaris
       Architecture:  x86_64 (amd64)   |   Type of failure:  Runtime crash
          Test Case:                   |        Blocked By:
           Blocking:                   |   Related Tickets:
Differential Rev(s):                   |         Wiki Page:
---------------------------------------+----------------------------------
 We have a web application executable that, when run with -N24 (on our
 24-core machine) hangs indefinitely, taking up 100% CPU. Introspecting
 with strace reveals that it's stuck in {{{yield}}} (on native SmartOS) and
 {{{shed_yield}}} (on both SmartOS LX and Linux emulation with KVM).

 If we run with +RTS -N2 -RTS, we do not observe this behavior.

 Attached is the output of truss(1) on an instance of a hung process.

 Other possibly-relevant information: this is an instance of the Warp web
 server and the Snap framework.

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


More information about the ghc-tickets mailing list