Home
last modified time | relevance | path

Searched refs:ucounts (Results 1 – 25 of 36) sorted by relevance

12

/openbmc/linux/kernel/
H A Ducount.c133 struct ucounts *ucounts; in find_ucounts() local
136 if (uid_eq(ucounts->uid, uid) && (ucounts->ns == ns)) in find_ucounts()
142 static void hlist_add_ucounts(struct ucounts *ucounts) in hlist_add_ucounts() argument
156 struct ucounts *get_ucounts(struct ucounts *ucounts) in get_ucounts() argument
168 struct ucounts *ucounts, *new; in alloc_ucounts() local
204 void put_ucounts(struct ucounts *ucounts) in put_ucounts() argument
233 struct ucounts *ucounts, *iter, *bad; in inc_ucount() local
236 for (iter = ucounts; iter; iter = tns->ucounts) { in inc_ucount()
256 for (iter = ucounts; iter; iter = iter->ns->ucounts) { in dec_ucount()
269 for (iter = ucounts; iter; iter = iter->ns->ucounts) { in inc_rlimit_ucounts()
[all …]
H A Dutsname.c20 static struct ucounts *inc_uts_namespaces(struct user_namespace *ns) in inc_uts_namespaces()
25 static void dec_uts_namespaces(struct ucounts *ucounts) in dec_uts_namespaces() argument
27 dec_ucount(ucounts, UCOUNT_UTS_NAMESPACES); in dec_uts_namespaces()
49 struct ucounts *ucounts; in clone_uts_ns() local
53 ucounts = inc_uts_namespaces(user_ns); in clone_uts_ns()
54 if (!ucounts) in clone_uts_ns()
66 ns->ucounts = ucounts; in clone_uts_ns()
78 dec_uts_namespaces(ucounts); in clone_uts_ns()
108 dec_uts_namespaces(ns->ucounts); in free_uts_ns()
H A Dpid_namespace.c62 static struct ucounts *inc_pid_namespaces(struct user_namespace *ns) in inc_pid_namespaces()
67 static void dec_pid_namespaces(struct ucounts *ucounts) in dec_pid_namespaces() argument
69 dec_ucount(ucounts, UCOUNT_PID_NAMESPACES); in dec_pid_namespaces()
77 struct ucounts *ucounts; in create_pid_namespace() local
87 ucounts = inc_pid_namespaces(user_ns); in create_pid_namespace()
88 if (!ucounts) in create_pid_namespace()
111 ns->ucounts = ucounts; in create_pid_namespace()
122 dec_pid_namespaces(ucounts); in create_pid_namespace()
131 dec_pid_namespaces(ns->ucounts); in delayed_free_pidns()
H A Dcred.c62 .ucounts = &init_ucounts,
86 if (cred->ucounts) in put_cred_rcu()
87 put_ucounts(cred->ucounts); in put_cred_rcu()
233 new->ucounts = get_ucounts(new->ucounts); in prepare_creds()
234 if (!new->ucounts) in prepare_creds()
433 inc_rlimit_ucounts(new->ucounts, UCOUNT_RLIMIT_NPROC, 1); in commit_creds()
437 dec_rlimit_ucounts(old->ucounts, UCOUNT_RLIMIT_NPROC, 1); in commit_creds()
582 struct ucounts *new_ucounts, *old_ucounts = new->ucounts; in set_cred_ucounts()
594 new->ucounts = new_ucounts; in set_cred_ucounts()
660 new->ucounts = get_ucounts(new->ucounts); in prepare_kernel_cred()
[all …]
H A Duser_namespace.c33 static struct ucounts *inc_user_namespaces(struct user_namespace *ns, kuid_t uid) in inc_user_namespaces()
38 static void dec_user_namespaces(struct ucounts *ucounts) in dec_user_namespaces() argument
40 return dec_ucount(ucounts, UCOUNT_USER_NAMESPACES); in dec_user_namespaces()
87 struct ucounts *ucounts; in create_user_ns() local
94 ucounts = inc_user_namespaces(parent_ns, owner); in create_user_ns()
95 if (!ucounts) in create_user_ns()
146 ns->ucounts = ucounts; in create_user_ns()
171 dec_user_namespaces(ucounts); in create_user_ns()
202 struct ucounts *ucounts = ns->ucounts; in free_user_ns() local
220 dec_user_namespaces(ucounts); in free_user_ns()
/openbmc/linux/include/linux/
H A Duser_namespace.h38 struct ucounts;
102 struct ucounts *ucounts; member
107 struct ucounts { struct
122 void dec_ucount(struct ucounts *ucounts, enum ucount_type type);
124 struct ucounts * __must_check get_ucounts(struct ucounts *ucounts);
125 void put_ucounts(struct ucounts *ucounts);
127 static inline long get_rlimit_value(struct ucounts *ucounts, enum rlimit_type type) in get_rlimit_value() argument
132 long inc_rlimit_ucounts(struct ucounts *ucounts, enum rlimit_type type, long v);
133 bool dec_rlimit_ucounts(struct ucounts *ucounts, enum rlimit_type type, long v);
134 long inc_rlimit_get_ucounts(struct ucounts *ucounts, enum rlimit_type type);
[all …]
H A Dsignal_types.h16 struct ucounts;
26 struct ucounts *ucounts; member
H A Dcred.h139 struct ucounts *ucounts; member
323 #define task_ucounts(task) (task_cred_xxx((task), ucounts))
340 #define current_ucounts() (current_cred_xxx(ucounts))
H A Dutsname.h27 struct ucounts *ucounts; member
H A Dpid_namespace.h38 struct ucounts *ucounts; member
H A Dipc_namespace.h76 struct ucounts *ucounts; member
H A Dtime_namespace.h21 struct ucounts *ucounts; member
H A Dshmem_fs.h94 extern int shmem_lock(struct file *file, int lock, struct ucounts *ucounts);
H A Dfsnotify_backend.h241 struct ucounts *ucounts; member
253 struct ucounts *ucounts; member
/openbmc/linux/fs/notify/inotify/
H A Dinotify.h55 static inline void dec_inotify_instances(struct ucounts *ucounts) in dec_inotify_instances() argument
57 dec_ucount(ucounts, UCOUNT_INOTIFY_INSTANCES); in dec_inotify_instances()
60 static inline struct ucounts *inc_inotify_watches(struct ucounts *ucounts) in inc_inotify_watches() argument
62 return inc_ucount(ucounts->ns, ucounts->uid, UCOUNT_INOTIFY_WATCHES); in inc_inotify_watches()
65 static inline void dec_inotify_watches(struct ucounts *ucounts) in dec_inotify_watches() argument
67 dec_ucount(ucounts, UCOUNT_INOTIFY_WATCHES); in dec_inotify_watches()
H A Dinotify_fsnotify.c183 if (group->inotify_data.ucounts) in inotify_free_group_priv()
184 dec_inotify_instances(group->inotify_data.ucounts); in inotify_free_group_priv()
H A Dinotify_user.c534 dec_inotify_watches(group->inotify_data.ucounts); in inotify_ignored_and_remove_idr()
614 if (!inc_inotify_watches(group->inotify_data.ucounts)) { in inotify_new_watch()
681 group->inotify_data.ucounts = inc_ucount(current_user_ns(), in inotify_new_group()
685 if (!group->inotify_data.ucounts) { in inotify_new_group()
/openbmc/linux/kernel/cgroup/
H A Dnamespace.c12 static struct ucounts *inc_cgroup_namespaces(struct user_namespace *ns) in inc_cgroup_namespaces()
17 static void dec_cgroup_namespaces(struct ucounts *ucounts) in dec_cgroup_namespaces() argument
19 dec_ucount(ucounts, UCOUNT_CGROUP_NAMESPACES); in dec_cgroup_namespaces()
43 dec_cgroup_namespaces(ns->ucounts); in free_cgroup_ns()
55 struct ucounts *ucounts; in copy_cgroup_ns() local
69 ucounts = inc_cgroup_namespaces(user_ns); in copy_cgroup_ns()
70 if (!ucounts) in copy_cgroup_ns()
82 dec_cgroup_namespaces(ucounts); in copy_cgroup_ns()
87 new_ns->ucounts = ucounts; in copy_cgroup_ns()
/openbmc/linux/ipc/
H A Dnamespace.c28 static struct ucounts *inc_ipc_namespaces(struct user_namespace *ns) in inc_ipc_namespaces()
33 static void dec_ipc_namespaces(struct ucounts *ucounts) in dec_ipc_namespaces() argument
35 dec_ucount(ucounts, UCOUNT_IPC_NAMESPACES); in dec_ipc_namespaces()
42 struct ucounts *ucounts; in create_ipc_ns() local
47 ucounts = inc_ipc_namespaces(user_ns); in create_ipc_ns()
48 if (!ucounts) { in create_ipc_ns()
71 ns->ucounts = ucounts; in create_ipc_ns()
102 dec_ipc_namespaces(ucounts); in create_ipc_ns()
160 dec_ipc_namespaces(ns->ucounts); in free_ipc_ns()
H A Dmqueue.c148 struct ucounts *ucounts; /* user who created, for accounting */ member
322 info->ucounts = NULL; /* set when all is ok */ in mqueue_get_inode()
372 info->ucounts = get_ucounts(current_ucounts()); in mqueue_get_inode()
373 if (info->ucounts) { in mqueue_get_inode()
379 dec_rlimit_ucounts(info->ucounts, UCOUNT_RLIMIT_MSGQUEUE, mq_bytes); in mqueue_get_inode()
381 put_ucounts(info->ucounts); in mqueue_get_inode()
382 info->ucounts = NULL; in mqueue_get_inode()
537 if (info->ucounts) { in mqueue_evict_inode()
549 dec_rlimit_ucounts(info->ucounts, UCOUNT_RLIMIT_MSGQUEUE, mq_bytes); in mqueue_evict_inode()
559 put_ucounts(info->ucounts); in mqueue_evict_inode()
[all …]
/openbmc/linux/kernel/time/
H A Dnamespace.c59 static struct ucounts *inc_time_namespaces(struct user_namespace *ns) in inc_time_namespaces()
64 static void dec_time_namespaces(struct ucounts *ucounts) in dec_time_namespaces() argument
66 dec_ucount(ucounts, UCOUNT_TIME_NAMESPACES); in dec_time_namespaces()
82 struct ucounts *ucounts; in clone_time_ns() local
86 ucounts = inc_time_namespaces(user_ns); in clone_time_ns()
87 if (!ucounts) in clone_time_ns()
105 ns->ucounts = ucounts; in clone_time_ns()
117 dec_time_namespaces(ucounts); in clone_time_ns()
249 dec_time_namespaces(ns->ucounts); in free_time_ns()
/openbmc/linux/mm/
H A Dmlock.c751 int user_shm_lock(size_t size, struct ucounts *ucounts) in user_shm_lock() argument
762 memlock = inc_rlimit_ucounts(ucounts, UCOUNT_RLIMIT_MEMLOCK, locked); in user_shm_lock()
765 dec_rlimit_ucounts(ucounts, UCOUNT_RLIMIT_MEMLOCK, locked); in user_shm_lock()
768 if (!get_ucounts(ucounts)) { in user_shm_lock()
769 dec_rlimit_ucounts(ucounts, UCOUNT_RLIMIT_MEMLOCK, locked); in user_shm_lock()
779 void user_shm_unlock(size_t size, struct ucounts *ucounts) in user_shm_unlock() argument
782 dec_rlimit_ucounts(ucounts, UCOUNT_RLIMIT_MEMLOCK, (size + PAGE_SIZE - 1) >> PAGE_SHIFT); in user_shm_unlock()
784 put_ucounts(ucounts); in user_shm_unlock()
/openbmc/linux/net/core/
H A Dnet_namespace.c398 static struct ucounts *inc_net_namespaces(struct user_namespace *ns) in inc_net_namespaces()
403 static void dec_net_namespaces(struct ucounts *ucounts) in dec_net_namespaces() argument
405 dec_ucount(ucounts, UCOUNT_NET_NAMESPACES); in dec_net_namespaces()
468 struct ucounts *ucounts; in copy_net_ns() local
475 ucounts = inc_net_namespaces(user_ns); in copy_net_ns()
476 if (!ucounts) in copy_net_ns()
487 net->ucounts = ucounts; in copy_net_ns()
506 dec_net_namespaces(ucounts); in copy_net_ns()
633 dec_net_namespaces(net->ucounts); in cleanup_net()
/openbmc/linux/fs/
H A Dmount.h19 struct ucounts *ucounts; member
/openbmc/linux/fs/notify/fanotify/
H A Dfanotify_user.c1201 struct ucounts *ucounts = group->fanotify_data.ucounts; in fanotify_add_new_mark() local
1211 !inc_ucount(ucounts->ns, ucounts->uid, UCOUNT_FANOTIFY_MARKS)) in fanotify_add_new_mark()
1234 dec_ucount(ucounts, UCOUNT_FANOTIFY_MARKS); in fanotify_add_new_mark()
1482 group->fanotify_data.ucounts = inc_ucount(current_user_ns(), in SYSCALL_DEFINE2()
1485 if (!group->fanotify_data.ucounts) { in SYSCALL_DEFINE2()

12