[dm-devel] [PATCH 5/5] libmultipath: don't dlclose tur checker DSO
Martin Wilck
martin.wilck at suse.com
Thu Nov 5 11:53:42 UTC 2020
On Wed, 2020-11-04 at 18:41 -0600, Benjamin Marzinski wrote:
> On Wed, Nov 04, 2020 at 11:56:07PM +0000, Martin Wilck wrote:
> >
> > I guess the key is that the thread's entry point must also be in
> > libmultipath (i.e. outside the DSO). In pseudo-code:
> >
> > entrypoint() {
> > refcount++;
> > pthread_cleanup_push(refcount--);
> > tur_thread(ct);
> > pthread_cleanup_pop(1);
> > }
> >
> > This way the thread can't be in DSO code any more when refcount
> > goes to
> > zero.
>
> Oh! I didn't think of solving it that way, but it makes sense. So,
> were
> you planning on posting a patch?
I just did ("libmultipath: prevent DSO unloading with astray checker
threads"). Please have a look and possibly test it using the setup
that failed for you before.
Regards
Martin
--
Dr. Martin Wilck <mwilck at suse.com>, Tel. +49 (0)911 74053 2107
SUSE Software Solutions Germany GmbH
HRB 36809, AG Nürnberg GF: Felix
Imendörffer
More information about the dm-devel
mailing list