[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