aboutsummaryrefslogtreecommitdiffstats
path: root/fs/namespace.c
AgeCommit message (Expand)AuthorFilesLines
2026-06-15Merge tag 'vfs-7.2-rc1.procfs' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-8/+26
2026-06-15Merge tag 'vfs-7.2-rc1.misc' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-4/+7
2026-06-10namespace: restrict OPEN_TREE_NAMESPACE/FSMOUNT_NAMESPACE to directoriesJann Horn1-0/+3
2026-06-04fhandle: fix UAF due to unlocked ->mnt_ns read in may_decode_fh()Jann Horn1-3/+3
2026-06-02mount: honour SB_NOUSER in the new mount APIAl Viro1-0/+4
2026-05-28fs/namespace: use __getname() to allocate mntpath bufferMike Rapoport (Microsoft)1-4/+3
2026-05-11proc: handle subset=pid separately in userns visibility checksAlexey Gladkov1-1/+16
2026-05-11fs: move SB_I_USERNS_VISIBLE to FS_USERNS_MOUNT_RESTRICTEDChristian Brauner1-3/+3
2026-05-11namespace: record fully visible mounts in listChristian Brauner1-8/+11
2026-04-14mount: always duplicate mountChristian Brauner1-21/+15
2026-03-12move_mount: allow MOVE_MOUNT_BENEATH on the rootfsChristian Brauner1-16/+5
2026-03-12move_mount: transfer MNT_LOCKEDChristian Brauner1-3/+13
2026-03-12namespace: allow creating empty mount namespacesChristian Brauner1-29/+56
2026-03-12mount: add FSMOUNT_NAMESPACEChristian Brauner1-7/+30
2026-03-12mount: simplify __do_loopback()Christian Brauner1-22/+9
2026-03-12mount: start iterating from start of rbtreeChristian Brauner1-6/+6
2026-02-25Merge tag 'vfs-7.0-rc2.fixes' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-59/+74
2026-02-21Convert 'alloc_obj' family to use the new default GFP_KERNEL argumentLinus Torvalds1-2/+2
2026-02-21treewide: Replace kmalloc with kmalloc_obj for non-scalar typesKees Cook1-3/+3
2026-02-18namespace: fix proc mount iterationChristian Brauner1-5/+15
2026-02-18mount: hold namespace_sem across copy in create_new_namespace()Christian Brauner1-54/+57
2026-02-14statmount: Fix the null-ptr-deref in do_statmount()Qing Wang1-0/+2
2026-02-09Merge tag 'pull-filename' of git://git.kernel.org/pub/scm/linux/kernel/git/vi...Linus Torvalds1-16/+6
2026-02-09Merge tag 'vfs-7.0-rc1.misc' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-8/+2
2026-02-09Merge tag 'vfs-7.0-rc1.namespace' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-51/+214
2026-01-16mount: add OPEN_TREE_NAMESPACEChristian Brauner1-16/+147
2026-01-16move_mount(2): switch to CLASS(filename_maybe_null)Al Viro1-4/+2
2026-01-16vfs_open_tree(): use CLASS(filename_uflags)Al Viro1-3/+2
2026-01-16mount_setattr(2): don't mess with LOOKUP_EMPTYAl Viro1-3/+2
2026-01-14fs: use nullfs unconditionally as the real rootfsChristian Brauner1-43/+21
2026-01-13move_mount(): filename_lookup() accepts ERR_PTR() as filenameAl Viro1-6/+0
2026-01-12fs: add immutable rootfsChristian Brauner1-11/+71
2026-01-12fs: add init_pivot_root()Christian Brauner1-47/+54
2026-01-12fs: ensure that internal tmpfs mount gets mount id zeroChristian Brauner1-1/+1
2025-12-24namespace: Replace simple_strtoul with kstrtoul to parse boot paramsThorsten Blum1-8/+2
2025-12-15statmount: accept fd as a parameterBhavik Sachdev1-35/+67
2025-12-15statmount: permission check should return EPERMBhavik Sachdev1-1/+1
2025-12-01Merge tag 'vfs-6.19-rc1.fd_prepare.fs' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-66/+37
2025-12-01Merge tag 'vfs-6.19-rc1.autofs' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-0/+6
2025-12-01Merge tag 'namespace-6.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-6/+4
2025-12-01Merge tag 'vfs-6.19-rc1.misc' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-16/+22
2025-11-28namespace: convert fsmount() to FD_PREPARE()Christian Brauner1-40/+30
2025-11-28namespace: convert open_tree_attr() to FD_PREPARE()Christian Brauner1-13/+6
2025-11-28namespace: convert open_tree() to FD_ADD()Christian Brauner1-13/+1
2025-11-25fs/namespace: fix reference leak in grab_requested_mnt_nsAndrei Vagin1-3/+4
2025-11-19fs: move mntput_no_expire() slowpath into a dedicated routineMateusz Guzik1-16/+22
2025-11-19autofs: dont trigger mount if it cant succeedIan Kent1-0/+6
2025-11-12fs/namespace: correctly handle errors returned by grab_requested_mnt_nsAndrei Vagin1-16/+16
2025-11-11ns: drop custom reference count initialization for initial namespacesChristian Brauner1-1/+1
2025-11-11fs: use boolean to indicate anonymous mount namespaceChristian Brauner1-2/+3
2025-11-11nstree: switch to new structuresChristian Brauner1-1/+1
2025-11-03nstree: assign fixed ids to the initial namespacesChristian Brauner1-1/+1
2025-11-03ns: use NS_COMMON_INIT() for all namespacesChristian Brauner1-4/+1
2025-10-29mnt: Remove dead code which might prevent from buildingAndy Shevchenko1-10/+0
2025-10-21fs: Fix uninitialized 'offp' in statmount_string()Zhen Ni1-2/+2
2025-10-03Merge tag 'pull-fs_context' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-5/+3
2025-10-03Merge tag 'pull-mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-537/+459
2025-09-29Merge tag 'namespace-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-136/+60
2025-09-29Merge tag 'kernel-6.18-rc1.clone3' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-1/+1
2025-09-29Merge tag 'vfs-6.18-rc1.mount' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-4/+6
2025-09-29mount: handle NULL values in mnt_ns_release()Christian Brauner1-1/+1
2025-09-29Merge tag 'vfs-6.18-rc1.misc' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-34/+72
2025-09-26listmount: don't call path_put() under namespace semaphoreChristian Brauner1-28/+59
2025-09-26statmount: don't call path_put() under namespace semaphoreChristian Brauner1-5/+3
2025-09-25ns: move ns type into struct ns_commonChristian Brauner1-3/+3
2025-09-22ns: simplify ns_common_init() furtherChristian Brauner1-2/+2
2025-09-19ns: use inode initializer for initial namespacesChristian Brauner1-1/+1
2025-09-19ns: rename to __ns_refChristian Brauner1-1/+1
2025-09-19mnt: port to ns_ref_*() helpersChristian Brauner1-2/+2
2025-09-19ns: add ns_common_free()Christian Brauner1-2/+2
2025-09-19nscommon: simplify initializationChristian Brauner1-2/+3
2025-09-19mnt: simplify ns_common_init() handlingChristian Brauner1-0/+2
2025-09-19mnt: expose pointer to init_mnt_nsChristian Brauner1-11/+16
2025-09-19mnt: support ns lookupChristian Brauner1-110/+29
2025-09-19Merge branch 'no-rebase-mnt_ns_tree_remove'Christian Brauner1-33/+45
2025-09-19mnt: use ns_common_init()Christian Brauner1-9/+6
2025-09-17constify {__,}mnt_is_readonly()Al Viro1-2/+2
2025-09-17WRITE_HOLD machinery: no need for to bump mount_lock seqcountAl Viro1-8/+8
2025-09-17struct mount: relocate MNT_WRITE_HOLD bitAl Viro1-17/+17
2025-09-17preparations to taking MNT_WRITE_HOLD out of ->mnt_flagsAl Viro1-9/+29
2025-09-17setup_mnt(): primitive for connecting a mount to filesystemAl Viro1-17/+17
2025-09-17simplify the callers of mnt_unhold_writers()Al Viro1-24/+10
2025-09-17copy_mnt_ns(): use guardsAl Viro1-12/+4
2025-09-17copy_mnt_ns(): use the regular mechanism for freeing empty mnt_ns on failureAl Viro1-3/+1
2025-09-17Merge branch 'no-rebase-mnt_ns_tree_remove' into work.mountAl Viro1-1/+1
2025-09-16mnt_ns_tree_remove(): DTRT if mnt_ns had never been added to mnt_ns_listAl Viro1-1/+1
2025-09-15open_detached_copy(): separate creation of namespace into helperAl Viro1-9/+15
2025-09-15open_detached_copy(): don't bother with mount_lock_hash()Al Viro1-2/+0
2025-09-15fs/namespace.c: sanitize descriptions for {__,}lookup_mnt()Al Viro1-29/+12
2025-09-15umount_tree(): take all victims out of propagation graph at onceAl Viro1-1/+2
2025-09-15do_mount(): use __free(path_put)Al Viro1-4/+2
2025-09-15do_move_mount_old(): use __free(path_put)Al Viro1-4/+2
2025-09-15constify can_move_mount_beneath() argumentsAl Viro1-2/+2
2025-09-15path_umount(): constify struct path argumentAl Viro1-1/+1
2025-09-15may_copy_tree(), __do_loopback(): constify struct path argumentAl Viro1-2/+2
2025-09-15path_mount(): constify struct path argumentAl Viro1-1/+1
2025-09-15do_{loopback,change_type,remount,reconfigure_mnt}(): constify struct path arg...Al Viro1-5/+5
2025-09-15do_new_mount{,_fc}(): constify struct path argumentAl Viro1-3/+4
2025-09-15mnt_warn_timestamp_expiry(): constify struct path argumentAl Viro1-1/+2
2025-09-15do_move_mount(), vfs_move_mount(), do_move_mount_old(): constify struct path ...Al Viro1-4/+6
2025-09-15collect_paths(): constify the return valueAl Viro1-2/+2
2025-09-15drop_collected_paths(): constify argumentsAl Viro1-2/+2
2025-09-15do_set_group(): constify path argumentsAl Viro1-1/+1
2025-09-15do_mount_setattr(): constify path argumentAl Viro1-1/+1
2025-09-15constify check_mnt()Al Viro1-1/+1
2025-09-15do_lock_mount(): don't modify path.Al Viro1-55/+62
2025-09-15new helper: topmost_overmount()Al Viro1-6/+3
2025-09-15don't bother passing new_path->dentry to can_move_mount_beneath()Al Viro1-6/+7
2025-09-15pivot_root(2): use old_mp.mp->m_dentry instead of old.dentryAl Viro1-1/+1
2025-09-15graft_tree(), attach_recursive_mnt() - pass pinned_mountpointAl Viro1-10/+10
2025-09-15do_add_mount(): switch to passing pinned_mountpoint instead of mountpoint + pathAl Viro1-17/+15
2025-09-15do_move_mount(): use the parent mount returned by do_lock_mount()Al Viro1-11/+6
2025-09-15change calling conventions for lock_mount() et.al.Al Viro1-115/+107
2025-09-04change the calling conventions for vfs_parse_fs_string()Al Viro1-5/+3
2025-09-02finish_automount(): use __free() to deal with dropping mnt on failureAl Viro1-14/+8
2025-09-02do_new_mount_fc(): use __free() to deal with dropping mnt on failureAl Viro1-7/+6
2025-09-02finish_automount(): take the lock_mount() analogue into a helperAl Viro1-17/+25
2025-09-02pivot_root(2): use __free() to deal with struct path in itAl Viro1-12/+7
2025-09-02do_loopback(): use __free(path_put) to deal with old_pathAl Viro1-6/+3
2025-09-02finish_automount(): simplify the ELOOP checkAl Viro1-2/+1
2025-09-02move_mount(2): take sanity checks in 'beneath' case into do_lock_mount()Al Viro1-8/+7
2025-09-02do_move_mount(): deal with the checks on old_path earlyAl Viro1-16/+13
2025-09-02do_move_mount(): trim local variablesAl Viro1-8/+4
2025-09-02switch do_new_mount_fc() to fc_mount()Al Viro1-17/+12
2025-09-02current_chrooted(): use guardsAl Viro1-9/+6
2025-09-02current_chrooted(): don't bother with follow_down_one()Al Viro1-10/+8
2025-09-02path_is_under(): use guardsAl Viro1-6/+5
2025-09-02mnt_set_expiry(): use guardsAl Viro1-2/+1
2025-09-02has_locked_children(): use guardsAl Viro1-6/+3
2025-09-02check_for_nsfs_mounts(): no need to take locksAl Viro1-11/+5
2025-09-02mnt_already_visible(): use guardsAl Viro1-7/+3
2025-09-02put_mnt_ns(): use guardsAl Viro1-4/+2
2025-09-02mark_mounts_for_expiry(): use guardsAl Viro1-4/+2
2025-09-02do_set_group(): use guardsAl Viro1-20/+13
2025-09-02do_change_type(): use guardsAl Viro1-7/+6
2025-09-02__is_local_mountpoint(): use guardsAl Viro1-9/+6
2025-09-02__detach_mounts(): use guardsAl Viro1-6/+4
2025-09-02fs/namespace.c: allow to drop vfsmount references via __free(mntput)Al Viro1-0/+2
2025-09-02fs/namespace.c: fix the namespace_sem guard messAl Viro1-7/+11
2025-09-01copy_process: pass clone_flags as u64 across calltreeSimon Schuster1-1/+1
2025-08-21fs: fix indentation styleGuopeng Zhang1-1/+1
2025-08-21fs: Add 'initramfs_options' to set initramfs mount optionsLichen Liu1-1/+10
2025-08-19Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-19/+22
2025-08-19use uniform permission checks for all mount propagation changesAl Viro1-14/+20
2025-08-19fix the softlockups in attach_recursive_mnt()Al Viro1-5/+2
2025-08-11vfs: fs/namespace.c: remove ms_flags argument from do_remountAskar Safin1-2/+2
2025-08-11fs: fix incorrect lflags value in the move_mount syscallYuntao Wang1-12/+20
2025-08-11vfs: output mount_too_revealing() errors to fscontextAleksa Sarai1-2/+4
2025-08-11open_tree_attr: do not allow id-mapping changes without OPEN_TREE_CLONEAleksa Sarai1-1/+2
2025-07-28Merge tag 'vfs-6.17-rc1.nsfs' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-1/+3
2025-07-28Merge tag 'vfs-6.17-rc1.misc' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-1/+1
2025-06-29statmount_mnt_basic(): simplify the logics for group idAl Viro1-1/+1
2025-06-29invent_group_ids(): zero ->mnt_group_id always implies !IS_MNT_SHARED()Al Viro1-1/+1
2025-06-29get rid of CL_SHARE_TO_SLAVEAl Viro1-4/+3
2025-06-29take freeing of emptied mnt_namespace to namespace_unlock()Al Viro1-15/+12
2025-06-29copy_tree(): don't link the mounts via mnt_listAl Viro1-36/+24
2025-06-29mnt_slave_list/mnt_slave: turn into hlist_head/hlist_nodeAl Viro1-8/+6
2025-06-29mount: separate the flags accessed only under namespace_semAl Viro1-4/+0
2025-06-29don't have mounts pin their parentsAl Viro1-22/+9
2025-06-29get rid of mountpoint->m_countAl Viro1-94/+92
2025-06-29combine __put_mountpoint() with unhash_mnt()Al Viro1-6/+6
2025-06-29pivot_root(): reorder tree surgeries, collapse unhash_mnt() and put_mountpoint()Al Viro1-6/+5
2025-06-29take ->mnt_expire handling under mount_lock [read_seqlock_excl]Al Viro1-17/+11
2025-06-29attach_recursive_mnt(): remove from expiry list on moveAl Viro1-6/+3
2025-06-29do_move_mount(): get rid of 'attached' flagAl Viro1-8/+5
2025-06-29do_move_mount(): take dropping the old mountpoint into attach_recursive_mnt()Al Viro1-5/+2
2025-06-29attach_recursive_mnt(): get rid of flags entirelyAl Viro1-12/+6
2025-06-29attach_recursive_mnt(): pass destination mount in all casesAl Viro1-11/+6
2025-06-29attach_recursive_mnt(): unify the mnt_change_mountpoint() logicsAl Viro1-9/+15
2025-06-29make commit_tree() usable in same-namespace move caseAl Viro1-16/+14
2025-06-29Rewrite of propagate_umount()Al Viro1-1/+0
2025-06-29sanitize handling of long-term internal mountsAl Viro1-0/+9
2025-06-29do_umount(): simplify the "is it still mounted" checksAl Viro1-5/+6
2025-06-29clone_mnt(): simplify the propagation-related logicsAl Viro1-13/+13
2025-06-29don't set MNT_LOCKED on parentless mountsAl Viro1-17/+15
2025-06-29__attach_mnt(): lose the second argumentAl Viro1-5/+6
2025-06-29dissolve_on_fput(): use anon_ns_root()Al Viro1-49/+13
2025-06-29new predicate: anon_ns_root(mount)Al Viro1-25/+3
2025-06-29constify is_local_mountpoint()Al Viro1-1/+1
2025-06-29new predicate: mount_is_ancestor()Al Viro1-6/+15
2025-06-29copy_tree(): don't set ->mnt_mountpoint on the root of copyAl Viro1-1/+0
2025-06-29prevent mount hash conflictsAl Viro1-5/+22
2025-06-29get rid of mnt_set_mountpoint_beneath()Al Viro1-33/+4
2025-06-29attach_mnt(): expand in attach_recursive_mnt(), then lose the flag argumentAl Viro1-25/+12
2025-06-24userns and mnt_idmap leak in open_tree_attr(2)Al Viro1-7/+3
2025-06-23attach_recursive_mnt(): do not lock the covering tree when sliding something ...Al Viro1-4/+4
2025-06-23replace collect_mounts()/drop_collected_mounts() with a safer variantAl Viro1-38/+59
2025-06-23docs/vfs: update references to i_mutex to i_rwsemJunxuan Liao1-1/+1
2025-06-11mntns: use stable inode number for initial mount nsChristian Brauner1-1/+3
2025-06-08Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-42/+71
2025-06-07do_change_type(): refuse to operate on unmounted/not ours mountsAl Viro1-0/+4
2025-06-07clone_private_mnt(): make sure that caller has CAP_SYS_ADMIN in the right usernsAl Viro1-0/+3
2025-06-07do_move_mount(): split the checks in subtree-of-our-ns and entire-anon casesAl Viro1-21/+25
2025-06-07fs: allow clone_private_mount() for a path on real rootfsKONDO KAZUMA(近藤 和真)1-10/+11
2025-06-07fix propagation graph breakage by MOVE_MOUNT_SET_GROUP move_mount(2)Al Viro1-1/+1
2025-06-07path_overmount(): avoid false negativesAl Viro1-6/+13
2025-06-07fs/fhandle.c: fix a race in call of has_locked_children()Al Viro1-4/+14
2025-05-30Merge tag 'pull-automount' of git://git.kernel.org/pub/scm/linux/kernel/git/v...Linus Torvalds1-21/+3
2025-05-30Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-13/+2
2025-05-26Don't propagate mounts into detached treesAl Viro1-13/+2