[Boost-bugs] [Boost C++ Libraries] #6200: patch to have condition_variable and mutex error better handle EINTR

Subject: [Boost-bugs] [Boost C++ Libraries] #6200: patch to have condition_variable and mutex error better handle EINTR
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-12-02 15:49:17


#6200: patch to have condition_variable and mutex error better handle EINTR
--------------------------------------------------+-------------------------
 Reporter: blentz@… | Owner: anthonyw
     Type: Patches | Status: new
Milestone: To Be Determined | Component: thread
  Version: Boost Development Trunk | Severity: Problem
 Keywords: thread mutex eintr phusion passenger |
--------------------------------------------------+-------------------------
 On some flavors of Linux, for some versions of the pthread library, there
 are cases where it erroneously sends EINTR. This is a violation of POSIX,
 but it exists on some customer's production machines.

 BOOST_VERIFY aborts on EINTR, but EINTR is usually not fatal, it just
 means you need to try later. Being that this behavior was found in
 production, I believe that it would be valuable to have Boost help protect
 downstream consumers from bad threading library behavior. This allows
 downstream consumers of Boost to not need to continuously rediscover and
 re-patch for this same bug.

 So, with this in mind, attached is a proposed patch to allow
 condition_variable and mutex to better handle interacting with this
 potentially broken threading library behavior.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/6200>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:07 UTC