On Friday, June 23, 2017 7:04:57 PM IST Amir Goldstein wrote: > On Fri, Jun 23, 2017 at 2:01 PM, Chandan Rajendra > <chandan@xxxxxxxxxxxxxxxxxx> wrote: > > For stat(2) on lowerdir non-dir entries in non-samefs case, this commit > > provides unique values for st_dev. The unique values are obtained by > > allocating anonymous bdevs for each of the lowerdirs in the overlayfs > > instance. > > > > Signed-off-by: Chandan Rajendra <chandan@xxxxxxxxxxxxxxxxxx> > > --- > > Reviewed-by: Amir Goldstein <amir73il@xxxxxxxxx> > Tested-by: Amir Goldstein <amir73il@xxxxxxxxx> > > Miklos, > > I re-created the branch ovl-constino [1] on top of ovl-hardlinks and without > the consistent dino patches. > > Applied Chandan's patch and resolved conflicts with my patches. > Then, applied my patch to relax constant st_ino for non-samefs on stat(2). > > Mutilated unionmount-testsuite layers check [2] to get over the unexpected > pseudo dev and now tests pass for non samefs including constant ino > verification and persistent ino verification for non-dir. > > Chandan, > > If you can fix the mutilated unionmount-testsuite check_layer(), that would be > nice. > Amir, In check_layer() we have the following, # TODO: for non-samefs, check file dev matches pseudo dev # and that pseduo dev != real dev raise TestError(name + ": File on unexpected layer") "check file dev matches pseudo dev" ... To do this we would have to have the list of pseudo dev ids for each of the lowerdirs. One crude way of getting such a list would be to create files having names with a known prefix under each of the lowerdirs before mounting the overlayfs instance. After mounting the overlayfs instance we could do a stat(2) on $overlay_mount/tempfile[i] to get the pseudo dev ids. These pseudo dev ids can then be used in check_layer(). Please let me know your views on this. -- chandan -- To unsubscribe from this list: send the line "unsubscribe linux-unionfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html