diff options
author | Alexander Vershilov <alexander.vershilov@gmail.com> | 2015-01-18 10:58:57 +0000 |
---|---|---|
committer | Sergei Trofimovich <siarheit@google.com> | 2015-01-18 12:17:38 +0000 |
commit | 2edb4a7bd5b892ddfac75d0b549d6682a0be5c02 (patch) | |
tree | b19cdd7305baacc1beb10fb0eb300f1a735ba991 /rts/eventlog | |
parent | 11881ec6f8d4db881671173441df87c2457409f4 (diff) | |
download | haskell-2edb4a7bd5b892ddfac75d0b549d6682a0be5c02.tar.gz |
Trac #9384: fix increasing capabilites number for eventlog.
Event log had inconcistent support for increacing capabilies
number, as header were not inserted in capability buffer. It
resulted in a ghc-events crash (see #9384). This commit
fixes this issue by inserting required header when number
of capabilies grows.
Reviewers: simonmar, Mikolaj, trofi, austin
Reviewed By: Mikolaj, trofi, austin
Subscribers: carter, thomie
Differential Revision: https://phabricator.haskell.org/D592
GHC Trac Issues: #9384
Diffstat (limited to 'rts/eventlog')
-rw-r--r-- | rts/eventlog/EventLog.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/rts/eventlog/EventLog.c b/rts/eventlog/EventLog.c index ef96f3c880..f830ec19a0 100644 --- a/rts/eventlog/EventLog.c +++ b/rts/eventlog/EventLog.c @@ -500,6 +500,15 @@ moreCapEventBufs (nat from, nat to) for (c = from; c < to; ++c) { initEventsBuf(&capEventBuf[c], EVENT_LOG_SIZE, c); } + + // The from == 0 already covered in initEventLogging, so we are interested + // only in case when we are increasing capabilities number + if (from > 0) { + for (c = from; c < to; ++c) { + postBlockMarker(&capEventBuf[c]); + } + } + } |