Defined in 2 files as a function:

Referenced in 30 files:

Smatch caller information:

ipc/namespace.c create_ipc_ns() -> put_user_ns()

Type Parameter Key Value
DATA_SOURCE 0 ns r get_user_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tsk->signal->exec_update_lock

ipc/namespace.c free_ipc_ns() -> put_user_ns()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/core/net_namespace.c cleanup_net() -> put_user_ns()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

net/core/net_namespace.c copy_net_ns() -> put_user_ns()

Type Parameter Key Value
DATA_SOURCE 0 ns $1 [m]
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tsk->signal->exec_update_lock

fs/fs_context.c put_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->root->d_lockref.lock
HALF_LOCKED2 &sb->s_umount

kernel/cgroup/namespace.c free_cgroup_ns() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/super.c destroy_super_work() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/nfs/nfs4idmap.c nfs_idmap_delete() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/nfs/nfs4idmap.c nfs_idmap_new() -> put_user_ns()

Type Parameter Key Value
DATA_SOURCE 0 ns r get_user_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/proc/base.c proc_id_map_open() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/proc/base.c proc_id_map_release() -> put_user_ns()

Type Parameter Key Value
BUF_SIZE 0 ns s32min-(-2),1-s32max
BUF_SIZE 0 ns s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ns unit_array_size

fs/proc/base.c proc_setgroups_open() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/proc/base.c proc_setgroups_release() -> put_user_ns()

Type Parameter Key Value
BUF_SIZE 0 ns s32min-(-2),1-s32max
BUF_SIZE 0 ns s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ns unit_array_size

kernel/exec_state.c __free_task_exec_state() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

fs/nfsd/nfsctl.c nfsd_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

kernel/ucount.c put_ucounts() -> put_user_ns()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/nstree.c __free_klistns_free() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 0
NOCHECK_CALL

fs/proc/root.c proc_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

fs/proc/root.c proc_parse_pidns_param() -> put_user_ns()

Type Parameter Key Value
NS_CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

kernel/nsproxy.c validate_nsset() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 0,4096-ptr_max
PARAM_VALUE 0 ns->ns.ops 4096-ptr_max
PARAM_VALUE 0 ns->ns.ops->install 4096-ptr_max
NOCHECK_CALL

fs/resctrl/rdtgroup.c rdt_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

kernel/time/namespace.c free_time_ns() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/mount.c sysfs_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

kernel/pid_namespace.c delayed_free_pidns() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

net/sunrpc/rpc_pipe.c rpc_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

fs/namespace.c finish_mount_kattr() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 1-u64max
NOCHECK_CALL

fs/namespace.c mnt_ns_release() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cgroup/cgroup.c cgroup_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

fs/notify/fanotify/fanotify.c fanotify_free_group_priv() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &nfsd_mutex

kernel/user_namespace.c userns_install() -> put_user_ns()

Type Parameter Key Value
NS_CAPABLE 0 21
NOCHECK_CALL

kernel/user_namespace.c userns_put() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &task->signal->exec_update_lock

fs/fuse/inode.c delayed_release() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

kernel/cred.c put_cred_rcu() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

fs/binfmt_misc.c bm_free() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 1-u64max
BUF_SIZE 0 ns (-1),11312
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ns unit_byte

fs/binfmt_misc.c bm_kill_sb() -> put_user_ns()

Type Parameter Key Value
BUF_SIZE 0 ns (-1),4608
BUF_SIZE 0 ns (-1),4608
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ns unit_byte
HALF_LOCKED2 &s->s_umount
HALF_LOCKED2 global &cifs_mount_mutex

kernel/bpf/token.c bpf_token_free() -> put_user_ns()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/exec.c free_bprm() -> put_user_ns()

Type Parameter Key Value
PARAM_VALUE 0 ns 1-u64max
NOCHECK_CALL

fs/exec.c would_dump() -> put_user_ns()

Type Parameter Key Value
NOCHECK_CALL
UNITS 0 ns unit_array_size

ipc/mqueue.c __do_notify() -> put_user_ns()

Type Parameter Key Value
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &info->lock
TYPE_LOCK (struct mqueue_inode_info)->lock

ipc/mqueue.c mq_create_mount() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

ipc/mqueue.c mqueue_init_fs_context() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &fc->uapi_mutex

ipc/mqueue.c remove_notification() -> put_user_ns()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &info->lock
TYPE_LOCK (struct mqueue_inode_info)->lock

kernel/utsname.c free_uts_ns() -> put_user_ns()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL