ovl: simplify ovl_same_sb() helper
No code uses the sb returned from this helper, so make it retrun a boolean and rename it to ovl_same_fs(). The xino mode is irrelevant when all layers are on same fs, so instead of describing samefs with mode OVL_XINO_OFF, use a new xino_mode state, which is 0 in the case of samefs, -1 in the case of xino=off and > 0 with xino enabled. Create a new helper ovl_same_dev(), to use instead of the common check for (ovl_same_fs() || xinobits). Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:

committed by
Miklos Szeredi

parent
94375f9d51
commit
0f831ec85e
@@ -469,7 +469,7 @@ static int ovl_cache_update_ino(struct path *path, struct ovl_cache_entry *p)
|
||||
int xinobits = ovl_xino_bits(dir->d_sb);
|
||||
int err = 0;
|
||||
|
||||
if (!ovl_same_sb(dir->d_sb) && !xinobits)
|
||||
if (!ovl_same_dev(dir->d_sb))
|
||||
goto out;
|
||||
|
||||
if (p->name[0] == '.') {
|
||||
@@ -744,7 +744,7 @@ static int ovl_iterate(struct file *file, struct dir_context *ctx)
|
||||
* entries.
|
||||
*/
|
||||
if (ovl_xino_bits(dentry->d_sb) ||
|
||||
(ovl_same_sb(dentry->d_sb) &&
|
||||
(ovl_same_fs(dentry->d_sb) &&
|
||||
(ovl_is_impure_dir(file) ||
|
||||
OVL_TYPE_MERGE(ovl_path_type(dentry->d_parent))))) {
|
||||
return ovl_iterate_real(file, ctx);
|
||||
|
Reference in New Issue
Block a user