| /linux/fs/overlayfs/ |
| H A D | inode.c | 27 struct dentry *upperdentry; in ovl_setattr() local 45 upperdentry = ovl_dentry_upper(dentry); in ovl_setattr() 48 winode = d_inode(upperdentry); in ovl_setattr() 79 inode_lock(upperdentry->d_inode); in ovl_setattr() 81 err = ovl_do_notify_change(ofs, upperdentry, attr); in ovl_setattr() 84 inode_unlock(upperdentry->d_inode); in ovl_setattr() 476 struct dentry *upperdentry = ovl_dentry_upper(dentry); in ovl_set_or_remove_acl() local 477 struct dentry *realdentry = upperdentry ?: ovl_dentry_lower(dentry); in ovl_set_or_remove_acl() 484 if (!acl && !upperdentry) { in ovl_set_or_remove_acl() 497 if (!upperdentry) { in ovl_set_or_remove_acl() [all …]
|
| H A D | namei.c | 117 static struct ovl_fh *ovl_get_fh(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_get_fh() argument 123 res = ovl_getxattr_upper(ofs, upperdentry, ox, NULL, 0); in ovl_get_fh() 137 res = ovl_getxattr_upper(ofs, upperdentry, ox, fh->buf, res); in ovl_get_fh() 454 struct dentry *upperdentry, struct ovl_path **stackp) in ovl_check_origin_fh() argument 479 if (upperdentry && !ovl_upper_is_whiteout(ofs, upperdentry) && in ovl_check_origin_fh() 480 inode_wrong_type(d_inode(upperdentry), d_inode(origin)->i_mode)) in ovl_check_origin_fh() 498 upperdentry, d_inode(upperdentry)->i_mode & S_IFMT, in ovl_check_origin_fh() 504 static int ovl_check_origin(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_check_origin() argument 507 struct ovl_fh *fh = ovl_get_fh(ofs, upperdentry, OVL_XATTR_ORIGIN); in ovl_check_origin() 513 err = ovl_check_origin_fh(ofs, fh, false, upperdentry, stackp); in ovl_check_origin() [all …]
|
| H A D | overlayfs.h | 206 struct dentry *upperdentry, in ovl_do_notify_change() argument 209 return notify_change(ovl_upper_mnt_idmap(ofs), upperdentry, attr, NULL); in ovl_do_notify_change() 299 struct dentry *upperdentry, in ovl_getxattr_upper() argument 304 .dentry = upperdentry, in ovl_getxattr_upper() 487 void ovl_dentry_init_reval(struct dentry *dentry, struct dentry *upperdentry, 489 void ovl_dentry_init_flags(struct dentry *dentry, struct dentry *upperdentry, 539 void ovl_inode_update(struct inode *inode, struct dentry *upperdentry); 556 struct dentry *upperdentry) in ovl_upper_is_whiteout() argument 559 .dentry = upperdentry, in ovl_upper_is_whiteout() 566 struct dentry *upperdentry) in ovl_check_origin_xattr() argument [all …]
|
| H A D | util.c | 179 void ovl_dentry_init_reval(struct dentry *dentry, struct dentry *upperdentry, in ovl_dentry_init_reval() argument 182 return ovl_dentry_init_flags(dentry, upperdentry, oe, OVL_D_REVALIDATE); in ovl_dentry_init_reval() 185 void ovl_dentry_init_flags(struct dentry *dentry, struct dentry *upperdentry, in ovl_dentry_init_flags() argument 191 if (upperdentry) in ovl_dentry_init_flags() 192 flags |= upperdentry->d_flags; in ovl_dentry_init_flags() 394 struct dentry *upperdentry = ovl_i_dentry_upper(inode); in ovl_inode_upper() local 396 return upperdentry ? d_inode(upperdentry) : NULL; in ovl_inode_upper() 592 void ovl_inode_update(struct inode *inode, struct dentry *upperdentry) in ovl_inode_update() argument 594 struct inode *upperinode = d_inode(upperdentry); in ovl_inode_update() 602 OVL_I(inode)->__upperdentry = upperdentry; in ovl_inode_update() [all …]
|
| H A D | xattrs.c | 41 struct dentry *upperdentry = ovl_i_dentry_upper(inode); in ovl_xattr_set() local 42 struct dentry *realdentry = upperdentry ?: ovl_dentry_lower(dentry); in ovl_xattr_set() 45 if (!value && !upperdentry) { in ovl_xattr_set() 53 if (!upperdentry) { in ovl_xattr_set()
|
| H A D | copy_up.c | 369 struct dentry *upperdentry, struct kstat *stat) in ovl_set_size() argument 376 return ovl_do_notify_change(ofs, upperdentry, &attr); in ovl_set_size() 379 static int ovl_set_timestamps(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_set_timestamps() argument 389 return ovl_do_notify_change(ofs, upperdentry, &attr); in ovl_set_timestamps() 392 int ovl_set_attr(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_set_attr() argument 402 err = ovl_do_notify_change(ofs, upperdentry, &attr); in ovl_set_attr() 410 err = ovl_do_notify_change(ofs, upperdentry, &attr); in ovl_set_attr() 413 ovl_set_timestamps(ofs, upperdentry, stat); in ovl_set_attr()
|
| H A D | super.c | 1309 struct dentry *upperdentry, in ovl_get_root() argument 1318 .upperdentry = upperdentry, in ovl_get_root() 1326 if (upperdentry) { in ovl_get_root() 1328 ino = d_inode(upperdentry)->i_ino; in ovl_get_root() 1331 if (ovl_is_impuredir(sb, upperdentry)) in ovl_get_root() 1355 ovl_dentry_init_flags(root, upperdentry, oe, DCACHE_OP_WEAK_REVALIDATE); in ovl_get_root() 1357 dget(upperdentry); in ovl_get_root()
|
| H A D | dir.c | 270 static int ovl_set_opaque(struct dentry *dentry, struct dentry *upperdentry) in ovl_set_opaque() argument 277 return ovl_set_opaque_xerr(dentry, upperdentry, -EIO); in ovl_set_opaque() 289 .upperdentry = newdentry, in ovl_instantiate() 460 static int ovl_set_upper_acl(struct ovl_fs *ofs, struct dentry *upperdentry, in ovl_set_upper_acl() argument 466 return ovl_do_set_acl(ofs, upperdentry, acl_name, acl); in ovl_set_upper_acl()
|
| H A D | export.c | 315 oip.upperdentry = dget(upper); in ovl_obtain_alias()
|