aboutsummaryrefslogtreecommitdiffstats
path: root/fs/overlayfs/dir.c
AgeCommit message (Expand)AuthorFilesLines
2026-04-21Merge tag 'pull-dcache-busy-wait' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-1/+1
2026-04-13Merge tag 'lsm-pr-20260410' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-1/+1
2026-04-03lsm: add backing_file LSM hooksPaul Moore1-1/+1
2026-04-02for_each_alias(): helper macro for iterating through dentries of given inodeAl Viro1-1/+1
2026-03-09ovl: change ovl_create_real() to get a new lock when re-opening created file.NeilBrown1-12/+25
2026-03-09ovl: pass name buffer to ovl_start_creating_temp()NeilBrown1-6/+8
2025-12-05ovl: pass original credentials, not mounter credentials during createChristian Brauner1-8/+12
2025-12-01Merge tag 'vfs-6.19-rc1.ovl' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-173/+191
2025-12-01Merge tag 'vfs-6.19-rc1.directory.locking' of git://git.kernel.org/pub/scm/li...Linus Torvalds1-123/+118
2025-11-28ovl: remove unneeded semicolonChen Ni1-1/+1
2025-11-19ovl: drop ovl_setup_cred_for_create()Christian Brauner1-33/+0
2025-11-19ovl: port ovl_create_or_link() to new ovl_override_creator_creds cleanup guardChristian Brauner1-7/+6
2025-11-19ovl: mark ovl_setup_cred_for_create() as unused temporarilyChristian Brauner1-1/+1
2025-11-19ovl: reflow ovl_create_or_link()Christian Brauner1-21/+30
2025-11-19ovl: port ovl_create_tmpfile() to new ovl_override_creator_creds cleanup guardChristian Brauner1-25/+25
2025-11-19ovl: add ovl_override_creator_creds cred guardChristian Brauner1-0/+36
2025-11-19ovl: port ovl_rename() to cred guardChristian Brauner1-11/+6
2025-11-19ovl: refactor ovl_rename()Christian Brauner1-57/+78
2025-11-19ovl: introduce struct ovl_renamedataChristian Brauner1-33/+45
2025-11-19ovl: port ovl_create_tmpfile() to cred guardChristian Brauner1-32/+26
2025-11-19ovl: port ovl_do_remove() to cred guardChristian Brauner1-7/+6
2025-11-19ovl: port ovl_set_link_redirect() to cred guardChristian Brauner1-8/+2
2025-11-19ovl: port ovl_create_or_link() to cred guardChristian Brauner1-39/+31
2025-11-14VFS: introduce end_creating_keep()NeilBrown1-6/+2
2025-11-14VFS: change vfs_mkdir() to unlock on failure.NeilBrown1-10/+8
2025-11-14Add start_renaming_two_dentries()NeilBrown1-14/+29
2025-11-14VFS/ovl/smb: introduce start_renaming_dentry()NeilBrown1-18/+1
2025-11-14VFS/nfsd/ovl: introduce start_renaming() and end_renaming()NeilBrown1-42/+32
2025-11-14VFS: introduce start_removing_dentry()NeilBrown1-6/+4
2025-11-14VFS/nfsd/cachefiles/ovl: introduce start_removing() and end_removing()NeilBrown1-8/+7
2025-11-14VFS/nfsd/cachefiles/ovl: add start_creating() and end_creating()NeilBrown1-42/+58
2025-10-20overlayfs: use the new ->i_state accessorsMateusz Guzik1-1/+1
2025-09-23ovl: make sure that ovl_create_real() returns a hashed dentryAmir Goldstein1-1/+21
2025-09-23ovl: Check for casefold consistency when creating new dentriesAndré Almeida1-0/+7
2025-08-18ovl: use I_MUTEX_PARENT when locking parent in ovl_create_temp()NeilBrown1-1/+1
2025-07-25ovl: properly print correct variableAntonio Quartulli1-2/+3
2025-07-18ovl: rename ovl_cleanup_unlocked() to ovl_cleanup()NeilBrown1-13/+14
2025-07-18ovl: change ovl_create_real() to receive dentry parentNeilBrown1-3/+4
2025-07-18ovl: narrow locking in ovl_whiteout()NeilBrown1-20/+24
2025-07-18ovl: change ovl_cleanup_and_whiteout() to take rename lock as neededNeilBrown1-11/+9
2025-07-18ovl: narrow locking on ovl_remove_and_whiteout()NeilBrown1-13/+10
2025-07-18ovl: narrow locking in ovl_rename()NeilBrown1-4/+7
2025-07-18ovl: simplify gotos in ovl_rename()NeilBrown1-27/+27
2025-07-18ovl: narrow locking in ovl_create_over_whiteout()NeilBrown1-7/+6
2025-07-18ovl: narrow locking in ovl_clear_empty()NeilBrown1-4/+3
2025-07-18ovl: narrow locking in ovl_create_upper()NeilBrown1-7/+5
2025-07-18ovl: Call ovl_create_temp() without lock held.NeilBrown1-26/+28
2025-07-18ovl: simplify an error path in ovl_copy_up_workdir()NeilBrown1-0/+15
2025-06-16VFS: change old_dir and new_dir in struct renamedata to dentrysNeilBrown1-8/+8
2025-03-05VFS: Change vfs_mkdir() to return the dentry.NeilBrown1-33/+4
2025-02-27Change inode_operations.mkdir to return struct dentry *NeilBrown1-4/+5
2024-12-02tree-wide: s/revert_creds_light()/revert_creds()/gChristian Brauner1-1/+1
2024-12-02tree-wide: s/override_creds_light()/override_creds()/gChristian Brauner1-1/+1
2024-11-15ovl: allocate a container struct ovl_file for ovl private contextAmir Goldstein1-3/+11
2024-11-15ovl: Optimize override/revert credsVinicius Costa Gomes1-1/+9
2024-11-14ovl: pass an explicit reference of creators creds to callersAmir Goldstein1-12/+22
2024-11-11ovl: use wrapper ovl_revert_creds()Vinicius Costa Gomes1-5/+5
2024-05-28ovl: fix copy-up in tmpfileMiklos Szeredi1-4/+4
2024-05-02ovl: remove upper umask handling from ovl_create_upper()Miklos Szeredi1-3/+0
2024-05-02ovl: implement tmpfileMiklos Szeredi1-19/+130
2023-11-25rename(): avoid a deadlock in the case of parents having no common ancestorAl Viro1-0/+4
2023-10-31ovl: Add an alternative type of whiteoutAlexander Larsson1-2/+2
2023-10-31ovl: reorder ovl_want_write() after ovl_inode_lock()Amir Goldstein1-34/+26
2023-06-19ovl: store enum redirect_mode in config instead of a stringAmir Goldstein1-1/+1
2023-06-19ovl: negate the ofs->share_whiteout booleanAmir Goldstein1-2/+2
2023-06-19ovl: move ovl_entry into ovl_inodeAmir Goldstein1-1/+1
2023-06-19ovl: update of dentry revalidate flags after copy upAmir Goldstein1-2/+1
2023-01-19fs: port inode_init_owner() to mnt_idmapChristian Brauner1-1/+1
2023-01-19fs: port ->rename() to pass mnt_idmapChristian Brauner1-1/+1
2023-01-19fs: port ->mknod() to pass mnt_idmapChristian Brauner1-1/+1
2023-01-19fs: port ->mkdir() to pass mnt_idmapChristian Brauner1-1/+1
2023-01-19fs: port ->symlink() to pass mnt_idmapChristian Brauner1-1/+1
2023-01-19fs: port ->create() to pass mnt_idmapChristian Brauner1-1/+1
2022-12-12Merge tag 'ovl-update-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/m...Linus Torvalds1-16/+30
2022-12-08ovl: Use ovl mounter's fsuid and fsgid in ovl_link()Zhang Tianci1-16/+30
2022-10-20ovl: use posix acl apiChristian Brauner1-18/+2
2022-10-20ovl: implement set acl methodChristian Brauner1-0/+1
2022-10-20ovl: implement get acl methodChristian Brauner1-1/+2
2022-10-20fs: rename current get acl methodChristian Brauner1-1/+1
2022-04-28ovl: use ovl_copy_{real,upper}attr() wrappersChristian Brauner1-6/+4
2022-04-28ovl: use ovl_path_getxattr() wrapperChristian Brauner1-1/+1
2022-04-28ovl: use ovl_lookup_upper() wrapperChristian Brauner1-16/+15
2022-04-28ovl: use ovl_do_notify_change() wrapperChristian Brauner1-1/+1
2022-04-28ovl: pass ofs to setattr operationsChristian Brauner1-1/+1
2022-04-28ovl: pass ofs to creation operationsChristian Brauner1-40/+45
2022-04-28ovl: use wrappers to all vfs_*xattr() callsAmir Goldstein1-7/+8
2021-11-04ovl: fix warning in ovl_create_real()Miklos Szeredi1-2/+1
2021-09-24ovl: fix missing negative dentry check in ovl_rename()Zheng Liang1-3/+7
2021-08-17ovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()chenying1-2/+4
2021-08-17ovl: do not set overlay.opaque for new directoriesVyacheslav Yurkov1-1/+3
2021-08-17ovl: pass ovl_fs to ovl_check_setxattr()Amir Goldstein1-2/+4
2021-04-12ovl: stack fileattr opsMiklos Szeredi1-0/+2
2021-02-23Merge tag 'idmapped-mounts-v5.12' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-15/+16
2021-01-28ovl: fix dentry leak in ovl_get_redirectLiangyan1-1/+1
2021-01-24fs: make helpers idmap mount awareChristian Brauner1-10/+11
2021-01-24namei: prepare for idmapped mountsChristian Brauner1-2/+2
2021-01-24xattr: handle idmapped mountsTycho Andersen1-1/+1
2021-01-24attr: handle idmapped mountsChristian Brauner1-1/+1
2021-01-24inode: make init and permission helpers idmapped mount awareChristian Brauner1-1/+1
2020-09-02ovl: pass ovl_fs down to functions accessing private xattrsMiklos Szeredi1-1/+1
2020-06-02ovl: initialize OVL_UPPERDATA in ovl_lookup()Vivek Goyal1-0/+2
2020-05-13ovl: whiteout inode sharingChengguang Xu1-12/+37
2020-03-27ovl: fix WARN_ON nlink drop to zeroMiklos Szeredi1-2/+24
2020-03-17ovl: check if upper fs supports RENAME_WHITEOUTAmir Goldstein1-1/+1
2020-03-17ovl: decide if revalidate needed on a per-dentry basisMiklos Szeredi1-0/+3
2020-01-22ovl: use pr_fmt auto generate prefixlijiazi1-5/+5
2019-12-10ovl: relax WARN_ON() on rename to selfAmir Goldstein1-1/+1
2019-06-21Merge tag 'spdx-5.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gre...Linus Torvalds1-4/+1
2019-06-19treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500Thomas Gleixner1-4/+1
2019-06-18ovl: fix typo in MODULE_PARM_DESCNicolas Schier1-1/+1
2019-05-08ovl: relax WARN_ON() for overlapping layers use caseAmir Goldstein1-1/+1
2018-11-19ovl: fix missing override creds in link of a metacopy upperAmir Goldstein1-1/+13
2018-10-31ovl: check whiteout in ovl_create_over_whiteout()Miklos Szeredi1-0/+4
2018-10-26ovl: using posix_acl_xattr_size() to get size instead of posix_acl_to_xattr()Chengguang Xu1-3/+2
2018-10-26ovl: remove the 'locked' argument of ovl_nlink_{start,end}Amir Goldstein1-10/+11
2018-10-26ovl: fix recursive oi->lock in ovl_link()Amir Goldstein1-0/+4
2018-08-22ovl: set I_CREATING on inode being createdMiklos Szeredi1-0/+4
2018-07-20ovl: Set redirect on upper inode when it is linkedVivek Goyal1-0/+8
2018-07-20ovl: Set redirect on metacopy files upon renameVivek Goyal1-20/+46
2018-07-18ovl: copy up timesMiklos Szeredi1-7/+24
2018-05-31ovl: use inode_insert5() to hash a newly created inodeAmir Goldstein1-10/+49
2018-05-31ovl: return EIO on internal errorMiklos Szeredi1-1/+1
2018-05-31ovl: make ovl_create_real() cope with vfs_mkdir() safelyAl Viro1-1/+33
2018-05-31ovl: create helper ovl_create_temp()Amir Goldstein1-4/+9
2018-05-31ovl: return dentry from ovl_create_real()Miklos Szeredi1-32/+30
2018-05-31ovl: struct cattr cleanupsAmir Goldstein1-24/+21
2018-05-31ovl: strip debug argument from ovl_do_ helpersAmir Goldstein1-10/+10
2018-05-31ovl: remove WARN_ON() real inode attributes mismatchAmir Goldstein1-7/+0
2018-01-24ovl: whiteout index when union nlink drops to zeroAmir Goldstein1-23/+35
2018-01-19ovl: take lower dir inode mutex outside upper sb_writers lockAmir Goldstein1-65/+52
2017-12-14ovl: fix overlay: warning prefixAmir Goldstein1-1/+2
2017-11-09ovl: update cache version of impure parent on renameAmir Goldstein1-3/+4
2017-11-09ovl: fix rmdir problem on non-merge dir with origin xattrzhangyi (F)1-3/+10
2017-11-09ovl: simplify ovl_check_empty_and_clear()zhangyi (F)1-3/+2
2017-10-05ovl: fix missing unlock_rename() in ovl_do_copy_up()Amir Goldstein1-20/+0
2017-09-13mm: treewide: remove GFP_TEMPORARY allocation flagMichal Hocko1-1/+1
2017-07-27ovl: constant d_ino for non-merge dirsMiklos Szeredi1-5/+6
2017-07-13ovl: mark parent impure on ovl_link()Amir Goldstein1-4/+18
2017-07-04ovl: persistent overlay inode nlink for indexed inodesAmir Goldstein1-2/+17
2017-07-04ovl: add flag for upper in ovl_entryMiklos Szeredi1-0/+1
2017-07-04ovl: cleanup bad and stale index entries on mountAmir Goldstein1-1/+3
2017-07-04ovl: move __upperdentry to ovl_inodeMiklos Szeredi1-4/+4
2017-07-04ovl: compare inodesMiklos Szeredi1-4/+9
2017-07-04ovl: fix nlink leak in ovl_rename()Amir Goldstein1-0/+7
2017-05-29ovl: mark upper merge dir with type origin entries "impure"Amir Goldstein1-26/+5
2017-05-19ovl: mark upper dir with type origin entries "impure"Amir Goldstein1-0/+45
2017-05-19ovl: remove unused arg from ovl_lookup_temp()Miklos Szeredi1-4/+4
2017-05-19ovl: handle rename when upper doesn't support xattrAmir Goldstein1-10/+19
2017-05-05ovl: persistent inode numbers for upper hardlinksAmir Goldstein1-0/+3
2017-05-05ovl: merge getattr for dir and nondirMiklos Szeredi1-60/+1
2017-05-05ovl: persistent inode number for directoriesAmir Goldstein1-4/+33
2017-04-26ovl: do not set overlay.opaque on non-dir createAmir Goldstein1-1/+1
2017-03-02statx: Add a system call to make enhanced file info availableDavid Howells1-4/+6
2016-12-16ovl: clean up kstat usageAl Viro1-28/+28
2016-12-16ovl: create directories inside merged parent opaqueAmir Goldstein1-2/+12
2016-12-16ovl: opaque cleanupMiklos Szeredi1-22/+21
2016-12-16ovl: allow setting max size of redirectMiklos Szeredi1-3/+7
2016-12-16ovl: check for emptiness of redirect dirAmir Goldstein1-9/+22
2016-12-16ovl: redirect on rename-dirMiklos Szeredi1-14/+124
2016-12-16ovl: check lower existence of rename targetMiklos Szeredi1-52/+11
2016-12-16ovl: rename: simplify handling of lower/merged directoryMiklos Szeredi1-18/+12
2016-12-16ovl: get rid of PURE typeMiklos Szeredi1-6/+3
2016-12-16ovl: check lower existence when removingMiklos Szeredi1-2/+2
2016-12-16ovl: add ovl_dentry_is_whiteout()Miklos Szeredi1-3/+3
2016-12-16ovl: don't check stickyMiklos Szeredi1-24/+0
2016-12-16ovl: don't check rename to selfMiklos Szeredi1-12/+3
2016-12-16ovl: treat special files like a regular fsMiklos Szeredi1-1/+1
2016-12-16ovl: rename ovl_rename2() to ovl_rename()Miklos Szeredi1-4/+4
2016-10-14Merge branch 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-1/+4
2016-10-10Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-1/+1
2016-10-10Merge branch 'work.xattr' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-3/+0
2016-10-07vfs: Remove {get,set,remove}xattr inode operationsAndreas Gruenbacher1-3/+0
2016-10-04Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/...Linus Torvalds1-0/+10
2016-09-27fs: rename "rename2" i_op to "rename"Miklos Szeredi1-1/+1
2016-09-21ovl: Fix info leak in ovl_lookup_temp()Richard Weinberger1-1/+4
2016-09-01ovl: Switch to generic_getxattrAndreas Gruenbacher1-1/+1
2016-09-01ovl: Switch to generic_removexattrAndreas Gruenbacher1-1/+1
2016-09-01ovl: handle umask and posix_acl_default correctly on creationMiklos Szeredi1-0/+54
2016-08-08security, overlayfs: Provide hook to correctly label newly created filesVivek Goyal1-0/+10
2016-07-29ovl: simplify empty checkingMiklos Szeredi1-29/+21
2016-07-29ovl: clear nlink on rmdirMiklos Szeredi1-2/+6
2016-07-29ovl: fix POSIX ACL settingMiklos Szeredi1-1/+1
2016-07-29ovl: share inode for hard linkMiklos Szeredi1-35/+49
2016-07-29ovl: store real inode pointer in ->i_privateMiklos Szeredi1-1/+2
2016-07-29ovl: update atime on upperMiklos Szeredi1-0/+1
2016-07-29ovl: fix sgid on directoryMiklos Szeredi1-4/+27
2016-07-29ovl: do operations on underlying file system in mounter's contextVivek Goyal1-30/+28
2016-07-29ovl: define ->get_acl() for overlay inodesVivek Goyal1-0/+1
2016-07-29ovl: move some common code in a functionVivek Goyal1-8/+12
2016-07-22ovl: verify upper dentry in ovl_remove_and_whiteout()Maxim Patlasov1-30/+24
2016-06-15ovl: fix uid/gid when creating over whiteoutMiklos Szeredi1-2/+11
2016-05-27ovl: override creds with the ones from the superblock mounterAntonio Murdaca1-62/+5
2016-03-21ovl: cleanup unused var in rename2Miklos Szeredi1-2/+0
2016-03-21ovl: verify upper dentry before unlink and renameMiklos Szeredi1-21/+38
2016-03-03ovl: ignore lower entries when checking purity of non-directory entriesKonstantin Khlebnikov1-0/+7
2016-03-03ovl: fix getcwd() failure after unsuccessful rmdirRui Wang1-1/+2
2016-01-22wrappers for ->i_mutex accessAl Viro1-6/+6
2015-05-19ovl: mount read-only if workdir can't be createdMiklos Szeredi1-0/+9
2015-05-14ovl: don't remove non-empty opaque directoryMiklos Szeredi1-5/+19
2015-02-22VFS: (Scripted) Convert S_ISLNK/DIR/REG(dentry->d_inode) to d_is_*(dentry)David Howells1-3/+3