diff options
author | Dylan Yudaken <dylany@fb.com> | 2020-10-06 13:42:22 +0100 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-10-17 22:02:50 -0400 |
commit | 50e9df49b7cd637c4552ab34bf629a01af4767c0 (patch) | |
tree | 15576b62a40dbb4bbf6ca58bc6afab6e4ff9e732 /rts/RtsSymbols.c | |
parent | 451455fd008500259f5d2207bdfdccf6dddb52c5 (diff) | |
download | haskell-50e9df49b7cd637c4552ab34bf629a01af4767c0.tar.gz |
When using rts_setInCallCapability, lock incall threads
This diff makes sure that incall threads, when using `rts_setInCallCapability`, will be created as locked.
If the thread is not locked, the thread might end up being scheduled to a different capability.
While this is mentioned in the docs for `rts_setInCallCapability,`, it makes the method significantly less useful as there is no guarantees on the capability being used.
This commit also adds a test to make sure things stay on the correct capability.
Diffstat (limited to 'rts/RtsSymbols.c')
-rw-r--r-- | rts/RtsSymbols.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/rts/RtsSymbols.c b/rts/RtsSymbols.c index 9b8a4ae16d..e433d9d369 100644 --- a/rts/RtsSymbols.c +++ b/rts/RtsSymbols.c @@ -763,6 +763,7 @@ SymI_HasProto(rts_evalStableIOMain) \ SymI_HasProto(rts_evalStableIO) \ SymI_HasProto(rts_eval_) \ + SymI_HasProto(rts_inCall) \ SymI_HasProto(rts_getBool) \ SymI_HasProto(rts_getChar) \ SymI_HasProto(rts_getDouble) \ |