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

Ship it!

Agreed, as discussed.

I've put some more ideas in the indmanager rewrite tracker bug: https://bugzilla.redhat.com/show_bug.cgi?id=1028090#c3

- Tomáš Bžatek


On November 26th, 2013, 11:15 a.m. UTC, Jan Safranek wrote:

Review request for OpenLMI Developers.
By Jan Safranek.

Updated Nov. 26, 2013, 11:15 a.m.

Repository: openlmi-providers

Description

indicationmgr: fixed deadlock when re-starting the namager thread.

When the indication manager thread was stopped, it destroys its mutex and
creates new one. If pthread_mutex_destroy() fails because the mutex is
locked, the new mutex is not created -> the old one is used, but it's already
locked -> deadlock.

So let's make sure the mutex is unlocked when destroying the thread.

Rewrite of indication manager thread is needed to have the manage() function
interruptible when waiting for events, e.g. using a pipe and select(),
this pthread_cancel leads to memory leaks.

Diffs

  • src/indmanager/ind_manager.c (7d6bc7545647589178ed2a858c0d136c4806b7b0)

View Diff