[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 25 commits: rts/Messages: Refactor

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Fri Dec 16 18:12:46 UTC 2022



Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC


Commits:
81d35da2 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts/Messages: Refactor

This doesn't change behavior but makes the code a bit easier to follow.

- - - - -
d43ba240 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts/ThreadPaused: Ordering fixes

- - - - -
432f3391 by Ben Gamari at 2022-12-16T13:12:35-05:00
eventlog: Silence spurious data race

- - - - -
dc78b20f by Ben Gamari at 2022-12-16T13:12:35-05:00
Introduce SET_INFO_RELEASE for Cmm

- - - - -
58ee46c2 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts: Use fences instead of explicit barriers

- - - - -
0aed7795 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts/stm: Fix memory ordering in readTVarIO#

See #22421.

- - - - -
73d9cfe9 by Ben Gamari at 2022-12-16T13:12:35-05:00
Improve heap memory barrier Note

Also introduce MUT_FIELD marker in Closures.h to document mutable
fields.

- - - - -
4da05ad5 by Ben Gamari at 2022-12-16T13:12:35-05:00
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.

- - - - -
168081f4 by Ben Gamari at 2022-12-16T13:12:35-05:00
ghc: Fix data race in dump file handling

Previously the dump filename cache would use a non-atomic update which
could potentially result in lost dump contents. Note that this is still
a bit racy since the first writer may lag behind a later appending
writer.

- - - - -
574baca6 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts: Always use atomics for context_switch and interrupt

Since these are modified by the timer handler.

- - - - -
254e988f by Ben Gamari at 2022-12-16T13:12:35-05:00
rts/Timer: Always use atomic operations

As noted in #22447, the existence of the pthread-based ITimer
implementation means that we cannot assume that the program is
single-threaded.

- - - - -
c4abf511 by Ben Gamari at 2022-12-16T13:12:35-05:00
rts: Encapsulate recent_activity access

This makes it easier to ensure that it is accessed using the necessary
atomic operations.

- - - - -
6c24bd9c by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Encapsulate access to capabilities array

- - - - -
c19bffdc by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Encapsulate sched_state

- - - - -
b7ce9a11 by Ben Gamari at 2022-12-16T13:12:36-05:00
PrimOps: Fix benign MutVar race

Relaxed ordering is fine here since the later CAS implies a release.

- - - - -
bbf78573 by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Style fix

- - - - -
7b275de1 by Ben Gamari at 2022-12-16T13:12:36-05:00
compiler: Use release store in eager blackholing

- - - - -
64845c47 by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Fix ordering of makeStableName

- - - - -
2f1133e9 by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Use ordered accesses instead of explicit barriers

- - - - -
5fb4f4e0 by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Statically allocate capabilities

This is a rather simplistic way of solving #17289.

- - - - -
6e4bb43d by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Ensure that all accesses to pending_sync are atomic

- - - - -
56e59c0e by Ben Gamari at 2022-12-16T13:12:36-05:00
rts: Note race with wakeBlockingQueue

- - - - -
85fcc322 by Bodigrim at 2022-12-16T13:12:37-05:00
Bump submodule directory to 1.3.8.0 and hpc to HEAD

- - - - -
c1212d69 by Bodigrim at 2022-12-16T13:12:37-05:00
Accept allocations increase on Windows

This is because of `filepath-1.4.100.0` and AFPP, causing increasing round-trips
between lists and ByteArray. See #22625 for discussion.

Metric Increase:
    MultiComponentModules
    MultiComponentModulesRecomp
    MultiLayerModules
    MultiLayerModulesRecomp
    T10421
    T10547
    T12150
    T12227
    T12234
    T12425
    T13035
    T13253
    T13253-spj
    T13701
    T13719
    T15703
    T16875
    T18140
    T18282
    T18304
    T18698a
    T18698b
    T18923
    T20049
    T21839c
    T21839r
    T5837
    T6048
    T9198
    T9961
    TcPlugin_RewritePerf
    hard_hole_fits

- - - - -
da1c5e5d by Cheng Shao at 2022-12-16T13:12:39-05:00
testsuite: Mark T9405 as fragile instead of broken on Windows

It's starting to pass again, and the unexpected pass blocks CI.

- - - - -


30 changed files:

- compiler/GHC/StgToCmm/Bind.hs
- compiler/GHC/Utils/Logger.hs
- libraries/directory
- libraries/hpc
- rts/Apply.cmm
- rts/Capability.c
- rts/Capability.h
- rts/HeapStackCheck.cmm
- rts/IOManager.c
- rts/Messages.c
- rts/Messages.h
- rts/PrimOps.cmm
- rts/Printer.c
- rts/ProfHeap.c
- rts/ProfilerReport.c
- rts/ProfilerReportJson.c
- rts/Profiling.c
- rts/Proftimer.c
- rts/RetainerProfile.c
- rts/RtsAPI.c
- rts/RtsStartup.c
- rts/SMPClosureOps.h
- rts/STM.c
- rts/Schedule.c
- rts/Schedule.h
- rts/Stats.c
- rts/StgMiscClosures.cmm
- rts/Task.c
- rts/ThreadPaused.c
- rts/Threads.c


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/82e5cc090b86ea106709fac6ff307cca8121a705...da1c5e5d9b9d66abc4b477b10b40ce52f233fee4

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/82e5cc090b86ea106709fac6ff307cca8121a705...da1c5e5d9b9d66abc4b477b10b40ce52f233fee4
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20221216/0c98e55f/attachment-0001.html>


More information about the ghc-commits mailing list