aboutsummaryrefslogtreecommitdiffstats
path: root/fs/namei.c
AgeCommit message (Expand)AuthorFilesLines
2020-10-24Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-1/+2
2020-09-24fs: remove the unused SB_I_MULTIROOT flagChristoph Hellwig1-2/+2
2020-08-27Add a "nosymfollow" mount option.Mattias Nissler1-1/+2
2020-08-14exec: restore EACCES of S_ISDIR execve()Kees Cook1-1/+3
2020-08-12Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-2/+8
2020-08-12exec: move path_noexec() check earlierKees Cook1-0/+4
2020-08-12exec: move S_ISREG() check earlierKees Cook1-2/+4
2020-08-12fix breakage in do_rmdir()Al Viro1-1/+1
2020-07-31init: add an init_mknod helperChristoph Hellwig1-1/+1
2020-07-31init: add an init_mkdir helperChristoph Hellwig1-1/+1
2020-07-31init: add an init_symlink helperChristoph Hellwig1-1/+1
2020-07-31init: add an init_link helperChristoph Hellwig1-2/+2
2020-07-31fs: push the getname from do_rmdir into the callersChristoph Hellwig1-6/+4
2020-06-08vfs: clean up posix_acl_permission() logic aroudn MAY_NOT_BLOCKLinus Torvalds1-1/+1
2020-06-08vfs: do not do group lookup when not necessaryLinus Torvalds1-15/+29
2020-05-14vfs: allow unprivileged whiteout creationMiklos Szeredi1-18/+3
2020-04-06fix a braino in legitimize_path()Al Viro1-1/+1
2020-04-02lookup_open(): don't bother with fallbacks to lookup+createAl Viro1-25/+9
2020-04-02atomic_open(): no need to pass struct open_flags anymoreAl Viro1-2/+1
2020-04-02open_last_lookups(): move complete_walk() into do_open()Al Viro1-10/+8
2020-04-02open_last_lookups(): lift O_EXCL|O_CREAT handling into do_open()Al Viro1-5/+2
2020-04-02open_last_lookups(): don't abuse complete_walk() when all we want is unlazyAl Viro1-9/+5
2020-04-02open_last_lookups(): consolidate fsnotify_create() callsAl Viro1-5/+2
2020-04-02take post-lookup part of do_last() out of loopAl Viro1-12/+9
2020-04-02link_path_walk(): sample parent's i_uid and i_mode for the last componentAl Viro1-10/+7
2020-04-02__nd_alloc_stack(): make it return boolAl Viro1-27/+18
2020-04-02reserve_stack(): switch to __nd_alloc_stack()Al Viro1-11/+8
2020-04-02pick_link(): take reserving space on stack into a new helperAl Viro1-21/+25
2020-04-02pick_link(): more straightforward handling of allocation failuresAl Viro1-8/+7
2020-04-02fold path_to_nameidata() into its only remaining callerAl Viro1-13/+6
2020-04-02pick_link(): pass it struct path already with normal refcounting rulesAl Viro1-6/+6
2020-04-02fs/namei.c: kill follow_mount()Al Viro1-20/+2
2020-04-02non-RCU analogue of the previous commitAl Viro1-17/+39
2020-04-02helper for mount rootwards traversalAl Viro1-16/+24
2020-04-02follow_dotdot(): be lazy about changing nd->pathAl Viro1-5/+13
2020-04-02follow_dotdot_rcu(): be lazy about changing nd->pathAl Viro1-15/+20
2020-04-02follow_dotdot{,_rcu}(): massage loopsAl Viro1-32/+45
2020-04-02lift all calls of step_into() out of follow_dotdot/follow_dotdot_rcuAl Viro1-34/+37
2020-03-13follow_dotdot{,_rcu}(): switch to use of step_into()Al Viro1-24/+7
2020-03-13handle_dots(), follow_dotdot{,_rcu}(): preparation to switch to step_into()Al Viro1-27/+25
2020-03-13move handle_dots(), follow_dotdot() and follow_dotdot_rcu() past step_into()Al Viro1-130/+130
2020-03-13follow_dotdot{,_rcu}(): lift LOOKUP_BENEATH checks out of loopAl Viro1-10/+10
2020-03-13follow_dotdot{,_rcu}(): lift switching nd->path to parent out of loopAl Viro1-8/+12
2020-03-13expand path_parent_directory() in its callersAl Viro1-18/+11
2020-03-13path_parent_directory(): leave changing path->dentry to callersAl Viro1-15/+19
2020-03-13path_connected(): pass mount and dentry separatelyAl Viro1-7/+5
2020-03-13split the lookup-related parts of do_last() into a separate helperAl Viro1-22/+29
2020-03-13do_last(): rejoin the common path even earlier in FMODE_{OPENED,CREATED} caseAl Viro1-10/+4
2020-03-13do_last(): simplify the liveness analysis past finish_open_createdAl Viro1-17/+11
2020-03-13do_last(): rejoing the common path earlier in FMODE_{OPENED,CREATED} caseAl Viro1-13/+8
2020-03-13do_last(): don't bother with keeping got_write in FMODE_OPENED caseAl Viro1-20/+11
2020-03-13do_last(): merge the may_open() callsAl Viro1-7/+3
2020-03-13atomic_open(): lift the call of may_open() into do_last()Al Viro1-15/+11
2020-03-13atomic_open(): return the right dentry in FMODE_OPENED caseAl Viro1-1/+5
2020-03-13new helper: traverse_mounts()Al Viro1-105/+72
2020-03-13massage __follow_mount_rcu() a bitAl Viro1-35/+35
2020-03-13namei: have link_path_walk() maintain LOOKUP_PARENTAl Viro1-11/+6
2020-03-13link_path_walk(): simplify stack handlingAl Viro1-9/+5
2020-03-13pick_link(): check for WALK_TRAILING, not LOOKUP_PARENTAl Viro1-5/+5
2020-03-13namei: invert the meaning of WALK_FOLLOWAl Viro1-6/+6
2020-03-13sanitize handling of nd->last_type, kill LAST_BINDAl Viro1-2/+1
2020-03-13finally fold get_link() into pick_link()Al Viro1-74/+61
2020-03-13merging pick_link() with get_link(), part 6Al Viro1-8/+5
2020-03-13merging pick_link() with get_link(), part 5Al Viro1-25/+18
2020-03-13merging pick_link() with get_link(), part 4Al Viro1-33/+26
2020-03-13merging pick_link() with get_link(), part 3Al Viro1-9/+9
2020-03-13merging pick_link() with get_link(), part 2Al Viro1-28/+40
2020-03-13merging pick_link() with get_link(), part 1Al Viro1-5/+7
2020-03-13expand the only remaining call of path_lookup_conditional()Al Viro1-9/+5
2020-03-13LOOKUP_MOUNTPOINT: fold path_mountpointat() into path_lookupat()Al Viro1-83/+6
2020-03-13fold handle_mounts() into step_into()Al Viro1-26/+15
2020-03-13new step_into() flag: WALK_NOFOLLOWAl Viro1-6/+4
2020-03-13step_into() callers: dismiss the symlink earlierAl Viro1-3/+7
2020-03-13lookup_fast(): take mount traversal into callersAl Viro1-26/+24
2020-03-13teach handle_mounts() to handle RCU modeAl Viro1-29/+17
2020-03-13lookup_fast(): consolidate the RCU success caseAl Viro1-3/+4
2020-03-12handle_mounts(): pass dentry in, turn path into a pure out argumentAl Viro1-19/+18
2020-03-12do_last(): collapse the call of path_to_nameidata()Al Viro1-3/+4
2020-03-12lookup_open(): saner calling conventions (return dentry on success)Al Viro1-27/+19
2020-02-27atomic_open(): saner calling conventions (return dentry on success)Al Viro1-17/+24
2020-02-27handle_mounts(): start building a sane wrapper for follow_managed()Al Viro1-16/+16
2020-02-27make build_open_flags() treat O_CREAT | O_EXCL as implying O_NOFOLLOWAl Viro1-10/+5
2020-02-27follow_automount() doesn't need the entire nameidataAl Viro1-5/+5
2020-02-27follow_automount(): get rid of dead^Wstillborn codeAl Viro1-25/+3
2020-02-27fix automount/automount race properlyAl Viro1-25/+4
2020-02-01vfs: fix do_last() regressionAl Viro1-2/+2
2020-01-29Merge branch 'work.openat2' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-34/+165
2020-01-26do_last(): fetch directory ->i_mode and ->i_uid before it's too lateAl Viro1-7/+10
2020-01-15fix autofs regression caused by follow_managed() changesAl Viro1-0/+1
2020-01-15reimplement path_mountpoint() with less magicAl Viro1-77/+12
2019-12-08namei: LOOKUP_{IN_ROOT,BENEATH}: permit limited ".." resolutionAleksa Sarai1-16/+27
2019-12-08namei: LOOKUP_IN_ROOT: chroot-like scoped resolutionAleksa Sarai1-3/+7
2019-12-08namei: LOOKUP_BENEATH: O_BENEATH-like scoped resolutionAleksa Sarai1-6/+74
2019-12-08namei: LOOKUP_NO_XDEV: block mountpoint crossingAleksa Sarai1-4/+27
2019-12-08namei: LOOKUP_NO_MAGICLINKS: block magic-link resolutionAleksa Sarai1-1/+9
2019-12-08namei: LOOKUP_NO_SYMLINKS: block symlink resolutionAleksa Sarai1-0/+3
2019-12-08namei: allow set_root() to produce errorsAleksa Sarai1-11/+24
2019-12-08namei: allow nd_jump_link() to produce errorsAleksa Sarai1-1/+2
2019-12-08namei: only return -ECHILD from follow_dotdot_rcu()Aleksa Sarai1-1/+1
2019-12-06Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-24/+32
2019-11-15fs/namei.c: fix missing barriers when checking positivityAl Viro1-3/+3
2019-11-15new helper: lookup_positive_unlocked()Al Viro1-0/+20
2019-11-15fs/namei.c: pull positivity check into follow_managed()Al Viro1-23/+11
2019-10-03audit: Report suspicious O_CREAT usageKees Cook1-2/+6
2019-09-03fs/namei.c: keep track of nd->root refcount statusAl Viro1-26/+15
2019-08-30fs/namei.c: new helper - legitimize_root()Al Viro1-10/+13
2019-07-21audit_inode(): switch to passing AUDIT_INODE_...Al Viro1-3/+3
2019-07-21filename_mountpoint(): make LOOKUP_NO_EVAL unconditional thereAl Viro1-1/+1
2019-07-21filename_lookup(): audit_inode() argument is always 0Al Viro1-1/+1
2019-06-20fsnotify: add empty fsnotify_{unlink,rmdir}() hooksAmir Goldstein1-0/+2
2019-05-07Merge tag 'fscrypt_for_linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscryptLinus Torvalds1-2/+2
2019-04-26switch fsnotify_move() to passing const struct qstr * for old_nameAl Viro1-2/+2
2019-04-26ovl_lookup_real_one(): don't bother with strlen()Al Viro1-1/+1
2019-04-17vfs: use READ_ONCE() to access ->i_linkEric Biggers1-2/+2
2019-03-12Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-2/+2
2019-03-10Merge branch 'next-integrity' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-0/+1
2019-03-07Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-2/+0
2019-03-07linux/fs.h: move member alignment check next to definition of struct filenameRasmus Villemoes1-2/+0
2019-02-28vfs: Add configuration parser helpersDavid Howells1-2/+2
2019-02-04ima: define ima_post_create_tmpfile() hook and add missing callMimi Zohar1-0/+1
2019-01-30audit: ignore fcaps on umountRichard Guy Briggs1-1/+1
2018-12-22Revert "vfs: Allow userns root to call mknod on owned filesystems."Christian Brauner1-2/+1
2018-08-23namei: allow restricted O_CREAT of FIFOs and regular filesSalvatore Mesoraca1-3/+50
2018-08-21Merge tag 'ovl-update-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-1/+1
2018-08-13Merge branches 'work.misc' and 'work.dcache' of git://git.kernel.org/pub/scm/...Linus Torvalds1-24/+12
2018-07-19fold generic_readlink() into its only callerAl Viro1-24/+12
2018-07-18Revert "vfs: update ovl inode before relatime check"Miklos Szeredi1-1/+1
2018-07-12few more cleanups of link_path_walk() callersAl Viro1-19/+11
2018-07-12allow link_path_walk() to take ERR_PTR()Al Viro1-33/+5
2018-07-12make path_init() unconditionally paired with terminate_walk()Al Viro1-16/+16
2018-07-12switch atomic_open() and lookup_open() to returning 0 in all success casesAl Viro1-17/+17
2018-07-12->atomic_open(): return 0 in all success casesAl Viro1-15/+15
2018-07-12get rid of 'opened' in path_openat() and the helpers downstreamAl Viro1-14/+8
2018-07-12get rid of 'opened' argument of ->atomic_open() - part 3Al Viro1-2/+1
2018-07-12getting rid of 'opened' argument of ->atomic_open() - part 1Al Viro1-1/+1
2018-07-12IMA: don't propagate opened through the entire thingAl Viro1-2/+1
2018-07-12introduce FMODE_CREATED and switch to itAl Viro1-7/+8
2018-07-12switch all remaining checks for FILE_OPENED to FMODE_OPENEDAl Viro1-5/+2
2018-07-12now we can fold open_check_o_direct() into do_dentry_open()Al Viro1-6/+1
2018-07-12lift fput() on late failures into path_openat()Al Viro1-16/+12
2018-07-12fold put_filp() into fput()Al Viro1-2/+2
2018-07-12get rid of cred argument of vfs_open() and do_dentry_open()Al Viro1-2/+2
2018-07-12pass ->f_flags value to alloc_empty_file()Al Viro1-3/+1
2018-07-12pass creds to get_empty_filp(), make sure dentry_open() passes the right credsAl Viro1-1/+1
2018-06-16Merge branch 'afs-proc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro...Linus Torvalds1-0/+29
2018-06-15afs: Display manually added cells in dynamic root mountDavid Howells1-0/+29
2018-06-12treewide: kmalloc() -> kmalloc_array()Kees Cook1-2/+2
2018-06-04Merge branch 'userns-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-4/+12
2018-06-04Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-3/+1
2018-06-04Merge branch 'work.rmdir' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-4/+4
2018-06-03Revert "fs: fold open_check_o_direct into do_dentry_open"Al Viro1-1/+6
2018-05-27rmdir(),rename(): do shrink_dcache_parent() only on successAl Viro1-4/+4
2018-05-24vfs: Allow userns root to call mknod on owned filesystems.Eric W. Biederman1-1/+2
2018-05-24vfs: Don't allow changing the link count of an inode with an invalid uid or gidEric W. Biederman1-3/+10
2018-05-17vfs: namei: use path_equal() in follow_dotdot()Danilo Krummrich1-3/+1
2018-04-09Merge branch 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-67/+57
2018-04-08getname_kernel() needs to make sure that ->name != ->iname in long caseAl Viro1-1/+2
2018-04-06Merge tag 'audit-pr-20180403' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-2/+3
2018-04-06make lookup_one_len() safe to use with directory locked sharedAl Viro1-1/+3
2018-04-06new helper: __lookup_slow()Al Viro1-9/+18
2018-04-06merge common parts of lookup_one_len{,_unlocked} into common helperAl Viro1-56/+34
2018-04-06Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-6/+3
2018-04-04Merge branch 'work.dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/v...Linus Torvalds1-24/+17
2018-04-02Merge branch 'syscalls-next' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-16/+45
2018-04-02fs: add do_linkat() helper and ksys_link() wrapper; remove in-kernel calls to...Dominik Brodowski1-3/+9
2018-04-02fs: add do_mknodat() helper and ksys_mknod() wrapper; remove in-kernel calls ...Dominik Brodowski1-3/+9
2018-04-02fs: add do_symlinkat() helper and ksys_symlink() wrapper; remove in-kernel ca...Dominik Brodowski1-3/+9
2018-04-02fs: add do_mkdirat() helper and ksys_mkdir() wrapper; remove in-kernel calls ...Dominik Brodowski1-2/+7
2018-04-02fs: add ksys_rmdir() wrapper; remove in-kernel calls to sys_rmdir()Dominik Brodowski1-1/+1
2018-04-02fs: add do_renameat2() helper; remove internal call to sys_renameat2()Dominik Brodowski1-4/+10
2018-03-29fold lookup_real() into __lookup_hash()Al Viro1-24/+17
2018-03-28fs: fold open_check_o_direct into do_dentry_openChristoph Hellwig1-6/+1
2018-03-21audit: add refused symlink to audit_namesRichard Guy Briggs1-0/+1
2018-03-21audit: remove path param from link denied functionRichard Guy Briggs1-2/+2
2018-03-19vfs: make sure struct filename->iname is word-alignedRasmus Villemoes1-0/+2
2018-03-15fs: Teach path_connected to handle nfs filesystems with multiple roots.Eric W. Biederman1-2/+3
2018-01-31Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-45/+26
2018-01-30Merge branch 'work.mqueue' of git://git.kernel.org/pub/scm/linux/kernel/git/v...Linus Torvalds1-0/+21
2018-01-30Merge branch 'userns-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-3/+0
2018-01-25fs: fold __inode_permission() into inode_permission()Eric Biggers1-45/+26
2018-01-05new primitive: vfs_mkobj()Al Viro1-0/+21
2017-11-30userns: Don't fail follow_automount based on s_user_nsEric W. Biederman1-3/+0
2017-11-29autofs: revert "autofs: fix AT_NO_AUTOMOUNT not being honored"Ian Kent1-12/+3
2017-11-17Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-1/+1
2017-11-17Merge branch 'misc.compat' of git://git.kernel.org/pub/scm/linux/kernel/git/v...Linus Torvalds1-7/+5
2017-11-10fs: expose do_unlinkat for built-in callersChristoph Hellwig1-7/+5
2017-11-07Merge branch 'linus' into locking/core, to resolve conflictsIngo Molnar1-0/+1
2017-11-05vfs: remove unneeded unlikely()Hirofumi Nakagawa1-1/+1
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman1-0/+1
2017-10-25locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns ...Mark Rutland1-2/+2
2017-09-14Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-2/+1
2017-09-08autofs: fix AT_NO_AUTOMOUNT not being honoredIan Kent1-3/+12
2017-07-19Merge tag 'gcc-plugins-v4.13-rc2' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-1/+1
2017-07-17VFS: Convert sb->s_flags & MS_RDONLY to sb_rdonly(sb)David Howells1-2/+1
2017-07-15Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-2/+1
2017-07-08Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds1-5/+5
2017-07-07dentry name snapshotsAl Viro1-4/+4
2017-07-06VFS: Provide empty name qstrDavid Howells1-2/+1
2017-06-30randstruct: Mark various structs for randomizationKees Cook1-1/+1
2017-06-29fs: Reorder inode_owner_or_capable() to avoid needlessKees Cook1-1/+1