ovl: consistent d_ino for non-samefs with xino
authorAmir Goldstein <amir73il@gmail.com>
Mon, 6 Nov 2017 14:48:02 +0000 (16:48 +0200)
committerMiklos Szeredi <mszeredi@redhat.com>
Thu, 12 Apr 2018 10:04:50 +0000 (12:04 +0200)
commitadbf4f7ea834671c9d12002136c8162b34e011d5
treeda12574cba5a268ec1b92c2a0b3cb91afa32613e
parent12574a9f4c9cc9d8d6fd9078cbb8ec7d3e9ed46b
ovl: consistent d_ino for non-samefs with xino

When overlay layers are not all on the same fs, but all inode numbers
of underlying fs do not use the high 'xino' bits, overlay st_ino values
are constant and persistent.

In that case, relax non-samefs constraint for consistent d_ino and always
iterate non-merge dir using ovl_fill_real() actor so we can remap lower
inode numbers to unique lower fs range.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/overlayfs/readdir.c