Re: [GHC] #4001: Implement an atomic readMVar
#4001: Implement an atomic readMVar ----------------------------+---------------------------------------------- Reporter: | Owner: ezyang simonmar | Status: closed Type: task | Milestone: 7.6.2 Priority: low | Version: 6.12.2 Component: Runtime | Keywords: System | Architecture: Unknown/Multiple Resolution: fixed | Difficulty: Moderate (less than a day) Operating System: | Blocked By: Unknown/Multiple | Related Tickets: Type of failure: | None/Unknown | Test Case: | Blocking: | ----------------------------+---------------------------------------------- Changes (by ezyang): * status: new => closed * resolution: => fixed Comment: {{{ commit 70e20631742e516c6a11c3c112fbd5b4a08c15ac Author: Edward Z. Yang <ezyang@mit.edu> Date: Mon Jul 8 11:03:35 2013 -0700 Implement atomicReadMVar, fixing #4001. We add the invariant to the MVar blocked threads queue that threads blocked on an atomic read are always at the front of the queue. This invariant is easy to maintain, since takers are only ever added to the end of the queue. Signed-off-by: Edward Z. Yang <ezyang@mit.edu> commit 1cb6aee7fd81175fe0af81146e878aaf7cda87d2 Author: Edward Z. Yang <ezyang@mit.edu> Date: Fri Jun 14 14:21:02 2013 -0700 Tests for atomicReadMVar. Signed-off-by: Edward Z. Yang <ezyang@mit.edu> commit c464def32f8ba65927ecfcbe34a5f06c21774ecc Author: Edward Z. Yang <ezyang@mit.edu> Date: Fri Jun 14 14:19:58 2013 -0700 Add atomicReadMVar to Control.Concurrent.MVar and friends. Also renumber thread statuses as necessary. Signed-off-by: Edward Z. Yang <ezyang@mit.edu> }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/4001#comment:21> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC