[Boost-bugs] [Boost C++ Libraries] #3325: Limited support for mapping regions to specific addresses in Linux

Subject: [Boost-bugs] [Boost C++ Libraries] #3325: Limited support for mapping regions to specific addresses in Linux
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-08-07 15:27:41


#3325: Limited support for mapping regions to specific addresses in Linux
-----------------------------------------------------------+----------------
 Reporter: Andy Schneider <andrew.schneider@…> | Owner:
     Type: Bugs | Status: new
Milestone: Boost 1.40.0 | Component: None
  Version: Boost 1.39.0 | Severity: Showstopper
 Keywords: |
-----------------------------------------------------------+----------------
 Hi,

 Changeset 3098 removed the use of MAP_FIXED when an address was provided
 to boost::mapped_region's constructor. I have a use-case where I need to
 construct a partially overlapping set of memory mappings. Without
 MAP_FIXED, on Linux mmap() doesn't use my address hint (because of the
 overlap) and my use-case fails.

 I have read the short debate about the use of MAP_FIXED being dangerous
 and support being withdrawn and I'd like to challenge the conclusion:

 1) Overlapping mmap's are part of a pattern for implementing a poor mans
 circular addressing on platforms that don't support that. Currently this
 pattern is ruled out.

 2) Whilst some might cut themselves with the sharp knife of overlapping
 mmaps, that isn't in a sufficient reason to remove a feature supporting
 legitimate use-cases.

 I've patched this locally for my purposes. Perhaps we need an additional
 flag to turn on support for overlapping mmaps (where this exists - which
 isn't Windows)?

 I've flagged this as a Showstopper as I would not be able to complete my
 solution without the patch I've put in place.

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