You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Gavin (JIRA)" <ji...@apache.org> on 2019/04/29 09:27:43 UTC

[jira] [Issue Comment Deleted] (MESOS-6832) Review how Mesos handles loading and unloading of dynamic libraries

     [ https://issues.apache.org/jira/browse/MESOS-6832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gavin updated MESOS-6832:
-------------------------
    Comment: was deleted

(was: www.rtat.net)

> Review how Mesos handles loading and unloading of dynamic libraries
> -------------------------------------------------------------------
>
>                 Key: MESOS-6832
>                 URL: https://issues.apache.org/jira/browse/MESOS-6832
>             Project: Mesos
>          Issue Type: Improvement
>          Components: cmake, gpu, java api, modules
>    Affects Versions: 1.2.0
>            Reporter: Joseph Wu
>            Priority: Major
>              Labels: mesosphere
>
> There are three instances in the codebase where we load a dynamic library into a static variable and leak said variable on purpose:
> * https://github.com/apache/mesos/blob/1.1.x/src/jvm/jvm.cpp#L83
> * https://github.com/apache/mesos/blob/1.1.x/src/slave/containerizer/mesos/isolators/gpu/nvml.cpp#L78
> * https://github.com/apache/mesos/blob/1.1.x/src/module/manager.hpp#L181
> ^ This last one will be changed to leak as part of MESOS-6658
> Since the dynamic libraries are loaded into static variables, they will only be destructed when the library (i.e. libmesos) gets unloaded. This might lead to inconsistencies when libmesos's own destruction unloads e.g., a dynamic libprocess, which might be opened by a {{dlopen}} of a module.  The module's cleanup would not find libprocess anymore and potentially crash during unloading.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)