Home
last modified time | relevance | path

Searched refs:upper (Results 1 – 15 of 15) sorted by relevance

/fs/overlayfs/
Dexport.c286 struct dentry *upper = upper_alias ?: index; in ovl_obtain_alias() local
297 if (d_is_dir(upper ?: lower)) in ovl_obtain_alias()
300 oip.upperdentry = dget(upper); in ovl_obtain_alias()
303 dput(upper); in ovl_obtain_alias()
307 if (upper) in ovl_obtain_alias()
329 ovl_dentry_init_reval(dentry, upper); in ovl_obtain_alias()
465 struct dentry *upper = ovl_index_upper(ofs, index); in ovl_lookup_real_inode() local
468 if (IS_ERR_OR_NULL(upper)) in ovl_lookup_real_inode()
469 return upper; in ovl_lookup_real_inode()
478 this = ovl_lookup_real(sb, upper, &ofs->layers[0]); in ovl_lookup_real_inode()
[all …]
Ddir.c234 static int ovl_set_opaque_xerr(struct dentry *dentry, struct dentry *upper, in ovl_set_opaque_xerr() argument
240 err = ovl_check_setxattr(ofs, upper, OVL_XATTR_OPAQUE, "y", 1, xerr); in ovl_set_opaque_xerr()
370 struct dentry *upper; in ovl_clear_empty() local
391 upper = upperpath.dentry; in ovl_clear_empty()
392 if (upper->d_parent->d_inode != udir) in ovl_clear_empty()
414 err = ovl_do_rename(ofs, wdir, opaquedir, udir, upper, RENAME_EXCHANGE); in ovl_clear_empty()
418 ovl_cleanup_whiteouts(ofs, upper, list); in ovl_clear_empty()
419 ovl_cleanup(ofs, wdir, upper); in ovl_clear_empty()
469 struct dentry *upper; in ovl_create_over_whiteout() local
489 upper = ovl_lookup_upper(ofs, dentry->d_name.name, upperdir, in ovl_create_over_whiteout()
[all …]
Dcopy_up.c393 struct dentry *upper) in ovl_set_origin() argument
412 err = ovl_check_setxattr(ofs, upper, OVL_XATTR_ORIGIN, fh->buf, in ovl_set_origin()
421 static int ovl_set_upper_fh(struct ovl_fs *ofs, struct dentry *upper, in ovl_set_upper_fh() argument
427 fh = ovl_encode_real_fh(ofs, upper, true); in ovl_set_upper_fh()
443 struct dentry *upper) in ovl_create_index() argument
477 err = ovl_set_upper_fh(ofs, upper, temp); in ovl_create_index()
515 struct dentry *upper; in ovl_link_up() local
530 upper = ovl_lookup_upper(ofs, c->dentry->d_name.name, upperdir, in ovl_link_up()
532 err = PTR_ERR(upper); in ovl_link_up()
533 if (!IS_ERR(upper)) { in ovl_link_up()
[all …]
Dnamei.c493 struct dentry *upper; in ovl_index_upper() local
502 upper = ovl_decode_real_fh(ofs, fh, ovl_upper_mnt(ofs), true); in ovl_index_upper()
505 if (IS_ERR_OR_NULL(upper)) in ovl_index_upper()
506 return upper ?: ERR_PTR(-ESTALE); in ovl_index_upper()
508 if (!d_is_dir(upper)) { in ovl_index_upper()
510 index, upper); in ovl_index_upper()
511 dput(upper); in ovl_index_upper()
515 return upper; in ovl_index_upper()
529 struct dentry *upper = NULL; in ovl_verify_index() local
575 upper = ovl_index_upper(ofs, index); in ovl_verify_index()
[all …]
Doverlayfs.h536 struct dentry *ovl_lookup_index(struct ovl_fs *ofs, struct dentry *upper,
543 static inline int ovl_verify_origin(struct ovl_fs *ofs, struct dentry *upper, in ovl_verify_origin() argument
546 return ovl_verify_set_fh(ofs, upper, OVL_XATTR_ORIGIN, origin, in ovl_verify_origin()
551 struct dentry *upper, bool set) in ovl_verify_upper() argument
553 return ovl_verify_set_fh(ofs, index, OVL_XATTR_UPPER, upper, true, set); in ovl_verify_upper()
560 void ovl_cleanup_whiteouts(struct ovl_fs *ofs, struct dentry *upper,
643 void ovl_check_protattr(struct inode *inode, struct dentry *upper);
644 int ovl_set_protattr(struct inode *inode, struct dentry *upper,
692 int ovl_set_attr(struct ovl_fs *ofs, struct dentry *upper, struct kstat *stat);
696 struct dentry *upper);
DKconfig6 An overlay filesystem combines two filesystems - an 'upper' filesystem
8 object in the 'upper' filesystem is visible while the object in the
10 merged with the 'upper' object.
50 the index directory to map lower inodes to upper inodes by default.
78 inconsistencies on lookup, like redirect from multiple upper dirs to
Dutil.c703 void ovl_check_protattr(struct inode *inode, struct dentry *upper) in ovl_check_protattr() argument
710 res = ovl_getxattr_upper(ofs, upper, OVL_XATTR_PROTATTR, buf, in ovl_check_protattr()
732 upper, res); in ovl_check_protattr()
738 int ovl_set_protattr(struct inode *inode, struct dentry *upper, in ovl_set_protattr() argument
763 err = ovl_check_setxattr(ofs, upper, OVL_XATTR_PROTATTR, in ovl_set_protattr()
766 err = ovl_removexattr(ofs, upper, OVL_XATTR_PROTATTR); in ovl_set_protattr()
Dreaddir.c1004 void ovl_cleanup_whiteouts(struct ovl_fs *ofs, struct dentry *upper, in ovl_cleanup_whiteouts() argument
1009 inode_lock_nested(upper->d_inode, I_MUTEX_CHILD); in ovl_cleanup_whiteouts()
1016 dentry = ovl_lookup_upper(ofs, p->name, upper, p->len); in ovl_cleanup_whiteouts()
1019 upper->d_name.name, p->len, p->name, in ovl_cleanup_whiteouts()
1024 ovl_cleanup(ofs, upper->d_inode, dentry); in ovl_cleanup_whiteouts()
1027 inode_unlock(upper->d_inode); in ovl_cleanup_whiteouts()
Dinode.c1142 static bool ovl_hash_bylower(struct super_block *sb, struct dentry *upper, in ovl_hash_bylower() argument
1160 if ((upper || !ovl_indexdir(sb)) && in ovl_hash_bylower()
1165 if (sb->s_export_op && upper) in ovl_hash_bylower()
Dsuper.c148 struct dentry *upper; in ovl_dentry_revalidate_common() local
156 upper = ovl_i_dentry_upper(inode); in ovl_dentry_revalidate_common()
157 if (upper) in ovl_dentry_revalidate_common()
158 ret = ovl_revalidate_real(upper, flags, weak); in ovl_dentry_revalidate_common()
/fs/btrfs/
Dbackref.c2734 INIT_LIST_HEAD(&node->upper); in btrfs_backref_alloc_node()
2765 struct btrfs_backref_node *upper; in btrfs_backref_cleanup_node() local
2772 while (!list_empty(&node->upper)) { in btrfs_backref_cleanup_node()
2773 edge = list_entry(node->upper.next, struct btrfs_backref_edge, in btrfs_backref_cleanup_node()
2775 upper = edge->node[UPPER]; in btrfs_backref_cleanup_node()
2784 if (list_empty(&upper->lower)) { in btrfs_backref_cleanup_node()
2785 list_add_tail(&upper->lower, &cache->leaves); in btrfs_backref_cleanup_node()
2786 upper->lowest = 1; in btrfs_backref_cleanup_node()
2843 struct btrfs_backref_node *upper; in handle_direct_tree_backref() local
2876 upper = btrfs_backref_alloc_node(cache, ref_key->offset, in handle_direct_tree_backref()
[all …]
Dbackref.h194 struct list_head upper; member
300 struct btrfs_backref_node *upper, in btrfs_backref_link_edge() argument
303 ASSERT(upper && lower && upper->level == lower->level + 1); in btrfs_backref_link_edge()
305 edge->node[UPPER] = upper; in btrfs_backref_link_edge()
307 list_add_tail(&edge->list[LOWER], &lower->upper); in btrfs_backref_link_edge()
309 list_add_tail(&edge->list[UPPER], &upper->lower); in btrfs_backref_link_edge()
363 ASSERT(list_empty(&node->upper)); in btrfs_backref_drop_node()
Drelocation.c191 while (!list_empty(&node->upper)) { in walk_up_backref()
192 edge = list_entry(node->upper.next, in walk_up_backref()
215 if (list_is_last(&edge->list[LOWER], &lower->upper)) { in walk_down_backref()
399 ASSERT(list_empty(&cur->upper)); in handle_useless_nodes()
423 if (list_empty(&lower->upper)) in handle_useless_nodes()
607 &new_edge->node[LOWER]->upper); in clone_backref_node()
2326 if (list_empty(&next->upper)) in calcu_metadata_size()
2329 edge = list_entry(next->upper.next, in calcu_metadata_size()
2393 struct btrfs_backref_node *upper; in do_relocation() local
2411 list_for_each_entry(edge, &node->upper, list[LOWER]) { in do_relocation()
[all …]
Dctree.c2980 struct extent_buffer *upper = path->nodes[1]; in __push_leaf_right() local
3083 btrfs_set_node_key(upper, &disk_key, slot + 1); in __push_leaf_right()
3084 btrfs_mark_buffer_dirty(upper); in __push_leaf_right()
3124 struct extent_buffer *upper; in push_leaf_right() local
3134 upper = path->nodes[1]; in push_leaf_right()
3135 if (slot >= btrfs_header_nritems(upper) - 1) in push_leaf_right()
3140 right = btrfs_read_node_slot(upper, slot + 1); in push_leaf_right()
3154 ret = btrfs_cow_block(trans, root, right, upper, in push_leaf_right()
/fs/fat/
Dnamei_vfat.c268 upper:1, member
273 (x)->upper = 1; \
303 info->upper = 0; in to_shortname_char()
311 info->upper = 0; in to_shortname_char()
315 info->upper = 0; in to_shortname_char()
452 return (base_info.upper && ext_info.upper); in vfat_create_shortname()
454 if ((base_info.upper || base_info.lower) && in vfat_create_shortname()
455 (ext_info.upper || ext_info.lower)) { in vfat_create_shortname()
456 if (!base_info.upper && base_info.lower) in vfat_create_shortname()
458 if (!ext_info.upper && ext_info.lower) in vfat_create_shortname()