On Thu, Apr 1, 2021 at 4:30 PM Amir Goldstein wrote: > > On Thu, Apr 1, 2021 at 4:37 PM Miklos Szeredi wrote: > > > > Commit 146d62e5a586 ("ovl: detect overlapping layers") made sure we > > don't have overapping layers, but it also broke the arguably valid use > > case of > > > > mount -olowerdir=/,upperdir=/subdir,.. > > > > where subdir also resides on the root fs. > > How is 'ls /merged/subdir' expected to behave in that use case? > Error? -ELOOP is the error returned. > > > > > I also see that we check for a trap at lookup time, so the question is > > what does the up-front layer check buy us? > > > > I'm not sure. I know it bought us silence from syzbot that started > mutating many overlapping layers repos.... > Will the lookup trap have stopped it too? maybe. We did not try. > > In general I think that if we can error out to user on mount time > it is preferred, but if we need to make that use case work, I'd try > to relax as minimum as possible from the check. Certainly. Like lower inside upper makes zero sense, OTOH upper inside lower does. So I think we just need to relax the upperdir/workdir layer check in this case. Like attached patch. Thanks, Miklos