[Boost-bugs] [Boost C++ Libraries] #12258: Removing Valgrind Conditional Issues in seed_rng.hpp for Valgrind

Subject: [Boost-bugs] [Boost C++ Libraries] #12258: Removing Valgrind Conditional Issues in seed_rng.hpp for Valgrind
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-06-08 17:38:12


#12258: Removing Valgrind Conditional Issues in seed_rng.hpp for Valgrind
---------------------------+------------------------------
 Reporter: deene.dafoe@… | Type: Tasks
   Status: new | Milestone: To Be Determined
Component: None | Version: Boost 1.61.0
 Severity: Problem | Keywords:
---------------------------+------------------------------
 There are a handful of tickets already created relating to the use of
 uninitialized memory in the boost::uuids::random_generator code.

 e.g.
 9407 (patch)
 7248 (bug)
 4002 (closed, documentation).

 The concerns seem to be two fold. Some folks are concerned with the
 correctness of using uninitialized memory as a source of
 randomness/entropy, and generally with the noise caused by Valgrind.

 4002 attempts to 'fix' the latter by adding documentation stating to add
 Valgrind suppressions. Unfortunately, using Valgrind Suppressions is not
 always useful if one thread generates the UUID and another thread uses it.
 In this case the thread that generates the Valgrind Issue does not include
 the boost code of interest (in the stack) so a suppression is needed for
 EACH instance.

 I'm seeing 100s if not 1000s of this scenario in a Valgrind Application
 I'm running and we finally gave up creating individual suppressions by
 patching the boost code to not use uninitialized memory when being
 compiled in a build meant to be used on Valgrind. We do not change the
 Boost code when doing any other build type other than for one intended to
 run only on Valgrind.

 If there is no plan to remove the uninitialized memory from the production
 code, is it possible to at least update the code to have some sort of
 Valgrind compile time flag so when built with this Valgrind flag the
 Valgrind Issues can be suppressed at the source?

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/12258>
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:20 UTC