Home
last modified time | relevance | path

Searched refs:whiteout (Results 1 – 14 of 14) sorted by relevance

/linux-6.12.1/fs/overlayfs/
Ddir.c69 struct dentry *whiteout; in ovl_whiteout() local
73 if (!ofs->whiteout) { in ovl_whiteout()
74 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
75 if (IS_ERR(whiteout)) in ovl_whiteout()
78 err = ovl_do_whiteout(ofs, wdir, whiteout); in ovl_whiteout()
80 dput(whiteout); in ovl_whiteout()
81 whiteout = ERR_PTR(err); in ovl_whiteout()
84 ofs->whiteout = whiteout; in ovl_whiteout()
88 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
89 if (IS_ERR(whiteout)) in ovl_whiteout()
[all …]
Dsuper.c544 struct dentry *whiteout; in ovl_check_rename_whiteout() local
571 whiteout = ovl_lookup_upper(ofs, name.name.name, workdir, name.name.len); in ovl_check_rename_whiteout()
572 err = PTR_ERR(whiteout); in ovl_check_rename_whiteout()
573 if (IS_ERR(whiteout)) in ovl_check_rename_whiteout()
576 err = ovl_upper_is_whiteout(ofs, whiteout); in ovl_check_rename_whiteout()
580 ovl_cleanup(ofs, dir, whiteout); in ovl_check_rename_whiteout()
581 dput(whiteout); in ovl_check_rename_whiteout()
Dovl_entry.h89 struct dentry *whiteout; member
Dparams.c724 dput(ofs->whiteout); in ovl_free_fs()
/linux-6.12.1/fs/f2fs/
Dnamei.c871 struct inode *dir, struct inode **whiteout, in f2fs_create_whiteout() argument
875 true, whiteout, fname); in f2fs_create_whiteout()
892 struct inode *whiteout = NULL; in f2fs_rename() local
933 err = f2fs_create_whiteout(idmap, old_dir, &whiteout, &fname); in f2fs_rename()
1022 if (!old_is_dir || whiteout) in f2fs_rename()
1035 if (whiteout) { in f2fs_rename()
1036 set_inode_flag(whiteout, FI_INC_LINK); in f2fs_rename()
1037 err = f2fs_add_link(old_dentry, whiteout); in f2fs_rename()
1041 spin_lock(&whiteout->i_lock); in f2fs_rename()
1042 whiteout->i_state &= ~I_LINKABLE; in f2fs_rename()
[all …]
/linux-6.12.1/fs/ubifs/
Ddir.c1328 struct inode *whiteout = NULL; in do_rename() local
1413 whiteout = create_whiteout(old_dir, old_dentry); in do_rename()
1414 if (IS_ERR(whiteout)) { in do_rename()
1415 err = PTR_ERR(whiteout); in do_rename()
1420 whiteout_ui = ubifs_inode(whiteout); in do_rename()
1435 iput(whiteout); in do_rename()
1438 set_nlink(whiteout, 1); in do_rename()
1444 lock_4_inodes(old_dir, new_dir, new_inode, whiteout); in do_rename()
1517 new_inode, &new_nm, whiteout, sync, !!whiteout); in do_rename()
1521 unlock_4_inodes(old_dir, new_dir, new_inode, whiteout); in do_rename()
[all …]
Djournal.c1356 const struct inode *whiteout, int sync, int delete_orphan) in ubifs_jnl_rename() argument
1389 if (whiteout) { in ubifs_jnl_rename()
1390 whiteout_ui = ubifs_inode(whiteout); in ubifs_jnl_rename()
1392 ubifs_assert(c, whiteout->i_nlink == 1); in ubifs_jnl_rename()
1436 if (whiteout) { in ubifs_jnl_rename()
1437 dent2->inum = cpu_to_le64(whiteout->i_ino); in ubifs_jnl_rename()
1438 dent2->type = get_dent_type(whiteout->i_mode); in ubifs_jnl_rename()
1464 if (whiteout) { in ubifs_jnl_rename()
1465 pack_inode(c, p, whiteout, 0); in ubifs_jnl_rename()
1512 if (whiteout) in ubifs_jnl_rename()
[all …]
Dubifs.h1813 const struct inode *whiteout, int sync, int delete_orphan);
/linux-6.12.1/fs/bcachefs/
Dbtree_journal_iter.c269 struct bkey_i whiteout; in bch2_journal_key_delete() local
271 bkey_init(&whiteout.k); in bch2_journal_key_delete()
272 whiteout.k.p = pos; in bch2_journal_key_delete()
274 return bch2_journal_key_insert(c, id, level, &whiteout); in bch2_journal_key_delete()
Dbcachefs_format.h388 x(whiteout, 1) \
Dfs.c848 bool whiteout = !!(flags & RENAME_WHITEOUT); in bch2_rename2() local
906 if (whiteout) { in bch2_rename2()
/linux-6.12.1/fs/ext4/
Dnamei.c3808 struct inode *whiteout = NULL; in ext4_rename() local
3881 whiteout = ext4_whiteout_for_rename(idmap, &old, credits, &handle); in ext4_rename()
3882 if (IS_ERR(whiteout)) { in ext4_rename()
3883 retval = PTR_ERR(whiteout); in ext4_rename()
3916 if (whiteout) { in ext4_rename()
3921 retval = ext4_setent(handle, &old, whiteout->i_ino, in ext4_rename()
3925 retval = ext4_mark_inode_dirty(handle, whiteout); in ext4_rename()
3953 if (!whiteout) { in ext4_rename()
4007 if (whiteout) in ext4_rename()
4008 __ext4_fc_track_create(handle, whiteout, in ext4_rename()
[all …]
/linux-6.12.1/Documentation/filesystems/
Doverlayfs.rst148 A whiteout is created as a character device with 0/0 device number or
149 as a zero-size regular file with the xattr "trusted.overlay.whiteout".
151 When a whiteout is found in the upper level of a merged directory, any
152 matching name in the lower level is ignored, and the whiteout itself
161 "trusted.overlay.whiteout", should be additionally marked by setting the xattr
163 This is needed to avoid the overhead of checking the "trusted.overlay.whiteout"
545 A lower dir with a regular whiteout will always be handled by the overlayfs
546 mount, so to support storing an effective whiteout file in an overlayfs mount an
547 alternative form of whiteout is supported. This form is a regular, zero-size
548 file with the "overlay.whiteout" xattr set, inside a directory with the
[all …]
/linux-6.12.1/mm/
Dshmem.c3711 struct dentry *whiteout; in shmem_whiteout() local
3714 whiteout = d_alloc(old_dentry->d_parent, &old_dentry->d_name); in shmem_whiteout()
3715 if (!whiteout) in shmem_whiteout()
3718 error = shmem_mknod(idmap, old_dir, whiteout, in shmem_whiteout()
3720 dput(whiteout); in shmem_whiteout()
3731 d_rehash(whiteout); in shmem_whiteout()