On Tue, Apr 25, 2017 at 4:53 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote: > On Tue, Apr 25, 2017 at 04:49:00PM +0300, Amir Goldstein wrote: >> On Tue, Apr 25, 2017 at 4:29 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote: >> > On Tue, Apr 25, 2017 at 04:23:28PM +0300, Amir Goldstein wrote: >> >> On Tue, Apr 25, 2017 at 3:52 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote: >> >> > On Tue, Apr 25, 2017 at 03:41:56PM +0300, Amir Goldstein wrote: >> >> >> On Tue, Apr 25, 2017 at 3:16 PM, Vivek Goyal <vgoyal@xxxxxxxxxx> wrote: >> >> >> > On Mon, Apr 24, 2017 at 12:14:05PM +0300, Amir Goldstein wrote: >> >> >> >> Miklos, >> >> >> >> >> >> >> >> Following your comments on the 'stable inodes' series from last week, >> >> >> >> this series fixes constant inode numbers for stat(2) with any layer >> >> >> >> configuration. >> >> >> >> >> >> >> >> For the case of all *lower* layers on same fs that supports NFS export, >> >> >> >> redirect by file handle will be used to optimize the lookup of the copy >> >> >> >> up origin of non-dir inode. >> >> >> > >> >> >> > I was trying to run unionmount-testsuite (original from dhowells) and I >> >> >> > disabled layer check. Looks like empty directory rename test fails. >> >> >> > >> >> >> > *** >> >> >> > *** ./run --ov --ts=0 rename-empty-dir >> >> >> > *** >> >> >> > TEST rename-empty-dir.py:10: Rename empty dir and rename back >> >> >> > ./run --rename /mnt/a/empty100 /mnt/a/no_dir100 >> >> >> > /mnt/a/empty100: Unexpected error: Invalid cross-device link >> >> >> > >> >> >> >> >> >> Strange... I can't find code in recent times when this used to work >> >> >> It certainly doesn't look like it should work with kernel v4.10 >> >> >> and redirect_dir=off. >> >> >> I couldn't the point of regression by looking at the change log. >> >> >> You'd need to bisect to find the regression patch. >> >> >> >> >> >> Are you not compiling kernel with redirect_dir? >> >> >> CONFIG_OVERLAY_FS_REDIRECT_DIR=y >> >> > >> >> > I noticed that I am running with REDIRECT_DIR=n. >> >> > >> >> > I also re-ran the tests without your patches and test is still broken. So >> >> > it is not due to your current patch series. >> >> > >> >> > It has been long time since I ran these tests. I suspect that we might >> >> > have changed this behavior during redirect directory patches. >> >> > >> >> > So question is, is this a regression or expected behavior. That is with >> >> > REDIRECT_DIR=n, renames of empty directory will be denied too. >> >> > >> >> >> >> It must be a regression, although I can't think why anyone would care. >> >> If one really cares about renaming lower empty directories, why not enable >> >> REDIRECT_DIR? >> > >> > I will enable it now. I just had an old config and ran into this. >> > >> > But this does raise the question unionmount-testsuite need to be >> > maintained somewhere so that it acts as a baseline to figure out if >> > new patches broke some existing tests. >> > >> > I can go by the tree you are maintaining but currently that's broken too >> > with REDIRECT_DIR=n. >> > >> >> Right. >> I have given some though about what's the best way to handle this. >> Probably need a test flag --noredirect. I'll add this to my TODO... >> >> BTW, I try to keep the branch overlayfs-devel uptodate for testing >> latest features. It could be rebased, but I'll make an effort not to. >> If there is a need for a more stable non-rewindable branch, let me know. > > I think would be good if you maintain "master" branch of your tree up > to date and hopefully that's stable so that later git pull does not talk > about conflicts. We can then use your tree for setting a baseline and > detecting regressions. > > CCing Dave Howells, in case he is interested in continuing to update his > tree as overlayfs kernel development takes place. > OK. declaring branch master on my tree 'ff-only': https://github.com/amir73il/unionmount-testsuite/tree/master Last commit is set to: 060af33 run --ov --samefs uses lower/upper on same fs This commit contains instructions also how to setup unionmount-testsuite on non tmpfs, which is very useful for being in touch with reality. It is recommended to test at least with the following flag combinations: ./run --ov # tmpfs not same for lower/upper ./run --ov=0 # same as above with cycle mount after mkdir/rename ./run --ov --samefs # tmpfs or configured base fs, same for lower and upper ./run --ov=0 --samefs # same as above with cycle mount after mkdir/rename Mind you that testing constant inode work still requires branch overlayfs-devel with the fix to check_layers() and more goodies. Amir.