Bug 1475501 - Fix link namespace coordination issues e.g. static vs. dynamic vs. dlmopen.
Fix link namespace coordination issues e.g. static vs. dynamic vs. dlmopen.
Status: NEW
Product: Fedora
Classification: Fedora
Component: glibc (Show other bugs)
All Linux
unspecified Severity low
: ---
: ---
Assigned To: Carlos O'Donell
Fedora Extras Quality Assurance
: FutureFeature
: 1283710 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 2017-07-26 15:31 EDT by Carlos O'Donell
Modified: 2018-01-12 05:22 EST (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
Sourceware 19341 None None None 2017-07-26 15:31 EDT

  None (edit)
Description Carlos O'Donell 2017-07-26 15:31:57 EDT
A statically linked application (the static namespace), and the dynamically loaded libraries (the dynamic namespace), and any dlmopen'd libraries (newly created link namespace), all need to coordinate in some minimal way to avoid some of the following problems:

* Don't double initialize the same global variable if it has a non-default value.
* If threads are loaded, then each of the namespace must be informed of this and act accordingly.
* If a function touches errno, this errno has to be shared across the namespaces, and all other global state variables that need to be shared between the static "namespace" and the dynamic "namespace."

Fixing this is going to be quit a bit of work and it won't get fixed soon. We'll need some kind of collected shared global state we can pass to the new namespace which allows the implementation to behave sensibly.

The conclusion at Red Hat was to continue to investigate the issue upstream, but that statically linked applications would be very very small and not likely to use any of the features which trigger this problem.
Comment 1 Carlos O'Donell 2017-07-26 15:32:30 EDT
*** Bug 1283710 has been marked as a duplicate of this bug. ***
Comment 2 Florian Weimer 2017-07-27 08:13:34 EDT
Your implication that static dlopen and dlmopen face the same problem is incorrect.  Some aspects are similar, the static dlopen problems are simply bugs.  The dlmopen issue is more of a design problem.
Comment 3 Jan Kurik 2017-08-15 03:10:56 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 27 development cycle.
Changing version to '27'.
Comment 4 Florian Weimer 2018-01-12 05:22:14 EST
Upstream deprecates static dlopen in glibc 2.27.

Note You need to log in before you can comment on or make changes to this bug.