On Wed, May 3, 2017 at 6:46 PM, Amir Goldstein <amir73il@xxxxxxxxx> wrote: > On Wed, May 3, 2017 at 6:43 PM, Miklos Szeredi <miklos@xxxxxxxxxx> wrote: >> On Mon, May 1, 2017 at 3:41 PM, Amir Goldstein <amir73il@xxxxxxxxx> wrote: >>> Miklos, >>> >>> This is v4 series of redirect by file handle and constant inode numbers. >>> this series fixes constant inode numbers for stat(2) for overlayfs >>> configuration of all layers on the same fs. >> >> Great work. >> >> I did some mutilation (aka. simplification) and pushed the result to >> overlayfs-constino.v5 >> Simplified indeed! >> No time to check if it works or not, so probably not... Oh but it does :-) Passed on my tests. I pushed branch master of unionmunt-tests for testing constino, so you can use that if you like, because my overlayfs-devel branch already plays with verify_lower. Anyway, I see that you relaxed the uuid_is_null() constrain, so now you can also test ./run --ov=0 --samefs with (default) tmpfs, although that is not really stress testing fh decoding.. >> tomorrow, but if you have time, please feel free to test and review my >> changes. >> > Reviewed. Specifically: ACK for simplifications of "store file handle of lower inode on copy up" ACK for simplifications of "lookup non-dir copy-up-origin by file handle" One bug here: + if (IS_ERR(origin)) { + if (origin == ERR_PTR(-ESTALE)) + origin = NULL; + } + if (ovl_dentry_weird(origin) || Should be else if. xfstest overlay/019 (fsstress) hits NULL pointer deref at ovl_dentry_weird() + ((d_inode(origin)->i_mode ^ d_inode(dentry)->i_mode) & S_IFMT)) { + dput(origin); + origin = NULL; + goto invalid; + } + Thanks! Amir.