This is an automatically generated e-mail. To reply, visit: http://reviewboard-openlmi.rhcloud.com/r/1166/

This change has been marked as submitted.


Review request for OpenLMI Developers.
By Jan Safranek.

Updated Nov. 1, 2013, 12:45 p.m.

Repository: openlmi-providers

Description

Prevent libglib2 from unloading

On shutdown, Pegasus CIMOM unloads (dlclose()) the provider first and then
destroys its worker threads. Since glib2 uses pthread_key_create()
internally, thread local storage destructors are called to free glib2's
data. As glib2 is already unloaded, the provider crashes.

This patch manually opens glib2 so it is not unloaded on dlclose() of
the provider shared library and thus the thread shutdown callbacks
do not crash.

Diffs

  • src/CMakeLists.txt (e2317ed535c90c8b73e5ac3d63b9d744d7c3d6e8)
  • src/openlmi.c (1dc1b62e30782b63ef9ddab746625a28109bfb4f)

View Diff