diff options
author | Ben Gamari <ben@smart-cactus.org> | 2022-11-09 12:39:47 -0500 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-12-16 16:12:44 -0500 |
commit | 70999283156f527c5aea6dee57a3d14989a9903a (patch) | |
tree | 50a7d056523d831e4df2202911b78ebb5c92a9af /rts/Proftimer.c | |
parent | 99269b9fd817262a686867383bf0fe88fdc64fb0 (diff) | |
download | haskell-70999283156f527c5aea6dee57a3d14989a9903a.tar.gz |
rts: Introduce getNumCapabilities
And ensure accesses to n_capabilities are atomic (although with relaxed
ordering). This is necessary as RTS API callers may concurrently call
into the RTS without holding a capability.
Diffstat (limited to 'rts/Proftimer.c')
-rw-r--r-- | rts/Proftimer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/Proftimer.c b/rts/Proftimer.c index 7bc5e865b4..6717731a6b 100644 --- a/rts/Proftimer.c +++ b/rts/Proftimer.c @@ -117,7 +117,7 @@ handleProfTick(void) total_ticks++; if (RELAXED_LOAD(&do_prof_ticks)) { uint32_t n; - for (n=0; n < n_capabilities; n++) { + for (n=0; n < getNumCapabilities(); n++) { capabilities[n]->r.rCCCS->time_ticks++; traceProfSampleCostCentre(capabilities[n], capabilities[n]->r.rCCCS, total_ticks); } |