On Thu, 2020-09-24 at 15:12 -0500, Benjamin Marzinski wrote: > On Thu, Sep 24, 2020 at 03:36:35PM +0200, mwilck@xxxxxxxx wrote: > > From: Martin Wilck <mwilck@xxxxxxxx> > > > > Since f0462f0 ("libmultipath: use vector for for pp->hwe and mp- > > >hwe"), > > we've been trying to fix issues caused by paths getting freed and > > mpp->hwe > > dangling. This approach couldn't work because we need mpp->hwe to > > persist, > > even if all paths are removed from the map. Before f0462f0, a > > simple > > assignment worked, because the lifetime of the hwe wasn't bound to > > the > > path. But now, we need to copy the vector. It turns out that we > > need to set > > mpp->hwe only in two places, add_map_with_path() and setup_map(), > > and > > that the code is simplified overall. > > Unless I'm missing someting, it looks like > __mpath_persistent_reserve_out() will call select_all_tg_pt(), which > uses mpp->hwe, without ever setting it. Granted, I don't see how > this > was supposed to work before your patch either. Right, it doesn't. Thanks for spotting it. Ok to create a new, separate patch for it? Regards, Martin -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel