Skip to content

Program hangs forever in sched_yield() / yield() unless -N is limited

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.

Trac metadata
Trac field Value
Version 7.10.2
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
Edited by patrick_thomson
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information