Unmask readMVar in readChan

Authored by dfeuer on May 29 2018, 3:51 PM.

Description

Unmask readMVar in readChan

When readMVar was implemented using takeMVar and putMVar,
we needed to use modifyMVarMasked in readChan just in case
the readMVar was interrupted between taking and putting. Now
that readMVar uses an atomic primop, this is impossible, so we can
safely unmask readMVar.

Reviewers: hvr, bgamari, simonmar

Reviewed By: simonmar

Subscribers: rwbarton, thomie, carter

Differential Revision: https://phabricator.haskell.org/D4738