On Thu, Sep 07, 2023 at 09:11:34 +0200, Martin Kletzander wrote: > On Wed, Sep 06, 2023 at 06:34:42PM +0300, Dmitry Frolov wrote: > > Reviewing the sources, I found, that > > in function lxcContainerMountAllFS() pointers > > vmDef->fss[i]->src and vmDef->fss[i]->src->path > > are checked for NULL after dereferencing in > > VIR_DEBUG() macro. > > > > Fixes: 57487085dc ("lxc: don't try to reference NULL when mounting filesystems") > > --- > > src/lxc/lxc_container.c | 6 ++++-- > > 1 file changed, 4 insertions(+), 2 deletions(-) [...] > > if (lxcContainerResolveSymlinks(vmDef->fss[i], false) < 0) > > return -1; > > > > - if (!(vmDef->fss[i]->src && vmDef->fss[i]->src->path && > > - STRPREFIX(vmDef->fss[i]->src->path, vmDef->fss[i]->dst)) && > > + if (!STRPREFIX(vmDef->fss[i]->src->path, vmDef->fss[i]->dst) && > > lxcContainerUnmountSubtree(vmDef->fss[i]->dst, false) < 0) > > ... here it only skips the unmount in such case. That makes sense > because for example tmpfs does not have a source path, only the > destination and the mount that is not visible in the context here would > not only be skipped as well, but the whole starting of a domain would > fail. > > Instead of this patch, you could just conditionally change the > VIR_DEBUG() to report what's actually happening. And we have a handy NULLSTR() macro for that case. > > > return -1; > > > > -- > > 2.34.1 > >