Lines Matching refs:upperdentry
116 static struct ovl_fh *ovl_get_fh(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_get_fh() argument
122 res = ovl_getxattr_upper(ofs, upperdentry, ox, NULL, 0); in ovl_get_fh()
136 res = ovl_getxattr_upper(ofs, upperdentry, ox, fh->buf, res); in ovl_get_fh()
422 struct dentry *upperdentry, struct ovl_path **stackp) in ovl_check_origin_fh() argument
447 if (upperdentry && !ovl_upper_is_whiteout(ofs, upperdentry) && in ovl_check_origin_fh()
448 inode_wrong_type(d_inode(upperdentry), d_inode(origin)->i_mode)) in ovl_check_origin_fh()
466 upperdentry, d_inode(upperdentry)->i_mode & S_IFMT, in ovl_check_origin_fh()
472 static int ovl_check_origin(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_check_origin() argument
475 struct ovl_fh *fh = ovl_get_fh(ofs, upperdentry, OVL_XATTR_ORIGIN); in ovl_check_origin()
481 err = ovl_check_origin_fh(ofs, fh, false, upperdentry, stackp); in ovl_check_origin()
1038 struct dentry *upperdir, *upperdentry = NULL; in ovl_lookup() local
1068 err = ovl_lookup_layer(upperdir, &d, &upperdentry, true); in ovl_lookup()
1072 if (upperdentry && upperdentry->d_flags & DCACHE_OP_REAL) { in ovl_lookup()
1073 dput(upperdentry); in ovl_lookup()
1077 if (upperdentry && !d.is_dir) { in ovl_lookup()
1088 err = ovl_check_origin(ofs, upperdentry, &origin_path); in ovl_lookup()
1142 if (upperdentry && !ctr && !ofs->noxattr && d.is_dir) { in ovl_lookup()
1143 err = ovl_fix_origin(ofs, dentry, this, upperdentry); in ovl_lookup()
1159 if (upperdentry && !ctr && in ovl_lookup()
1162 err = ovl_verify_origin(ofs, upperdentry, this, false); in ovl_lookup()
1172 if (!upperdentry && !d.is_dir && !ctr && d.metacopy) in ovl_lookup()
1236 } else if (!d.is_dir && upperdentry && !ctr && origin_path) { in ovl_lookup()
1266 if (!upperdentry && ctr) in ovl_lookup()
1271 index = ovl_lookup_index(ofs, upperdentry, origin, true); in ovl_lookup()
1293 if (upperdentry) in ovl_lookup()
1297 .dentry = upperdentry = dget(index), in ovl_lookup()
1319 if (upperdentry || ctr) { in ovl_lookup()
1321 .upperdentry = upperdentry, in ovl_lookup()
1336 if (upperdentry && !uppermetacopy) in ovl_lookup()
1343 ovl_dentry_init_reval(dentry, upperdentry, OVL_I_E(inode)); in ovl_lookup()
1365 dput(upperdentry); in ovl_lookup()