On Thu, Nov 14, 2019 at 12:30 PM Miklos Szeredi <miklos@xxxxxxxxxx> wrote: > > On Wed, Nov 13, 2019 at 9:06 PM Colin King <colin.king@xxxxxxxxxxxxx> wrote: > > > > From: Amir Goldstein <amir73il@xxxxxxxxx> > > > > In the past, overlayfs required that lower fs have non null > > uuid in order to support nfs export and decode copy up origin file handles. > > > > Commit 9df085f3c9a2 ("ovl: relax requirement for non null uuid of > > lower fs") relaxed this requirement for nfs export support, as long > > as uuid (even if null) is unique among all lower fs. > > I see another corner case: > > n- two filesystems, A and B, both have null uuid > - upper layer is on A > - lower layer 1 is also on A > - lower layer 2 is on B > > In this case bad_uuid won't be set for B, because the check only > involves the list of lower fs. Hence we'll try to decode a layer 2 > origin on layer 1 and fail. Right. > > Can we fix this without special casing lower layer fsid == 0 in > various places? I guess that involves using lower_fs[0] for the > fsid=0 case (i.e. index lower_fs by fsid, rather than (fsid -1)). > Probably warrants a separate patch. > I guess we should. I do hate that special casing. I can work of that, but would you like to hold back this patch now? Or just fix that corner case later? Thanks, Amir.