/ipc/ |
H A D | ipc_sysctl.c | 55 struct ipc_namespace *ns = current->nsproxy->ipc_ns; local 60 if (ns->shm_rmid_forced) 61 shm_destroy_orphaned(ns);
|
H A D | ipcns_notifier.c | 28 struct ipc_namespace *ns; local 37 ns = container_of(self, struct ipc_namespace, ipcns_nb); 39 * No need to get a reference on the ns: the 1st job of 45 * So the ipc ns cannot be freed while we are here. 47 recompute_msgmni(ns); 56 int register_ipcns_notifier(struct ipc_namespace *ns) argument 60 memset(&ns->ipcns_nb, 0, sizeof(ns->ipcns_nb)); 61 ns->ipcns_nb.notifier_call = ipcns_callback; 62 ns 69 cond_register_ipcns_notifier(struct ipc_namespace *ns) argument 83 unregister_ipcns_notifier(struct ipc_namespace *ns) argument [all...] |
H A D | mqueue.c | 112 struct ipc_namespace *ns; local 115 ns = __get_ns_from_inode(inode); 117 return ns; 312 struct ipc_namespace *ns = data; local 319 inode = mqueue_get_inode(sb, ns, S_IFDIR | S_ISVTX | S_IRWXUGO, NULL); 334 struct ipc_namespace *ns = current->nsproxy->ipc_ns; local 338 if (!ns_capable(ns->user_ns, CAP_SYS_ADMIN)) 341 data = ns; 1400 int mq_init_ns(struct ipc_namespace *ns) argument 1402 ns 1418 mq_clear_sbinfo(struct ipc_namespace *ns) argument 1423 mq_put_mnt(struct ipc_namespace *ns) argument [all...] |
H A D | msg.c | 75 #define msg_ids(ns) ((ns)->ids[IPC_MSG_IDS]) 77 static inline struct msg_queue *msq_obtain_object(struct ipc_namespace *ns, int id) argument 79 struct kern_ipc_perm *ipcp = ipc_obtain_object(&msg_ids(ns), id); 87 static inline struct msg_queue *msq_obtain_object_check(struct ipc_namespace *ns, argument 90 struct kern_ipc_perm *ipcp = ipc_obtain_object_check(&msg_ids(ns), id); 98 static inline void msg_rmid(struct ipc_namespace *ns, struct msg_queue *s) argument 100 ipc_rmid(&msg_ids(ns), &s->q_perm); 114 * @ns: namespace 119 static int newque(struct ipc_namespace *ns, struc argument 212 freeque(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) argument 243 struct ipc_namespace *ns; local 339 msgctl_down(struct ipc_namespace *ns, int msqid, int cmd, struct msqid_ds __user *buf, int version) argument 412 msgctl_nolock(struct ipc_namespace *ns, int msqid, int cmd, int version, void __user *buf) argument 525 struct ipc_namespace *ns; local 613 struct ipc_namespace *ns; local 828 struct ipc_namespace *ns; local 998 recompute_msgmni(struct ipc_namespace *ns) argument 1023 msg_init_ns(struct ipc_namespace *ns) argument 1036 msg_exit_ns(struct ipc_namespace *ns) argument [all...] |
H A D | namespace.c | 22 struct ipc_namespace *ns; local 25 ns = kmalloc(sizeof(struct ipc_namespace), GFP_KERNEL); 26 if (ns == NULL) 29 err = proc_alloc_inum(&ns->proc_inum); 31 kfree(ns); 35 atomic_set(&ns->count, 1); 36 err = mq_init_ns(ns); 38 proc_free_inum(ns->proc_inum); 39 kfree(ns); 44 sem_init_ns(ns); 61 copy_ipcs(unsigned long flags, struct user_namespace *user_ns, struct ipc_namespace *ns) argument 77 free_ipcs(struct ipc_namespace *ns, struct ipc_ids *ids, void (*free)(struct ipc_namespace *, struct kern_ipc_perm *)) argument 100 free_ipc_ns(struct ipc_namespace *ns) argument 142 put_ipc_ns(struct ipc_namespace *ns) argument 154 struct ipc_namespace *ns = NULL; local 166 ipcns_put(void *ns) argument 173 struct ipc_namespace *ns = new; local 187 struct ipc_namespace *ns = vp; local [all...] |
H A D | sem.c | 143 #define sem_ids(ns) ((ns)->ids[IPC_SEM_IDS]) 173 void sem_init_ns(struct ipc_namespace *ns) argument 175 ns->sc_semmsl = SEMMSL; 176 ns->sc_semmns = SEMMNS; 177 ns->sc_semopm = SEMOPM; 178 ns->sc_semmni = SEMMNI; 179 ns->used_sems = 0; 180 ipc_init_ids(&ns->ids[IPC_SEM_IDS]); 184 void sem_exit_ns(struct ipc_namespace *ns) argument 381 sem_obtain_lock(struct ipc_namespace *ns, int id, struct sembuf *sops, int nsops, int *locknum) argument 404 sem_obtain_object(struct ipc_namespace *ns, int id) argument 414 sem_obtain_object_check(struct ipc_namespace *ns, int id) argument 431 sem_rmid(struct ipc_namespace *ns, struct sem_array *s) argument 477 newary(struct ipc_namespace *ns, struct ipc_params *params) argument 567 struct ipc_namespace *ns; local 1070 freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) argument 1161 semctl_nolock(struct ipc_namespace *ns, int semid, int cmd, int version, void __user *p) argument 1250 semctl_setval(struct ipc_namespace *ns, int semid, int semnum, unsigned long arg) argument 1321 semctl_main(struct ipc_namespace *ns, int semid, int semnum, int cmd, void __user *p) argument 1514 semctl_down(struct ipc_namespace *ns, int semid, int cmd, int version, void __user *p) argument 1573 struct ipc_namespace *ns; local 1671 find_alloc_undo(struct ipc_namespace *ns, int semid) argument 1786 struct ipc_namespace *ns; local [all...] |
H A D | shm.c | 52 struct ipc_namespace *ns; member in struct:shm_file_data 62 #define shm_ids(ns) ((ns)->ids[IPC_SHM_IDS]) 70 static void shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp); 75 void shm_init_ns(struct ipc_namespace *ns) argument 77 ns->shm_ctlmax = SHMMAX; 78 ns->shm_ctlall = SHMALL; 79 ns->shm_ctlmni = SHMMNI; 80 ns->shm_rmid_forced = 0; 81 ns 89 do_shm_rmid(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) argument 104 shm_exit_ns(struct ipc_namespace *ns) argument 130 shm_obtain_object(struct ipc_namespace *ns, int id) argument 140 shm_obtain_object_check(struct ipc_namespace *ns, int id) argument 154 shm_lock(struct ipc_namespace *ns, int id) argument 179 shm_rmid(struct ipc_namespace *ns, struct shmid_kernel *s) argument 210 shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp) argument 237 shm_may_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp) argument 255 struct ipc_namespace *ns = sfd->ns; local 274 struct ipc_namespace *ns = data; local 294 shm_destroy_orphaned(struct ipc_namespace *ns) argument 305 struct ipc_namespace *ns = task->nsproxy->ipc_ns; local 482 newseg(struct ipc_namespace *ns, struct ipc_params *params) argument 619 struct ipc_namespace *ns; local 745 shm_get_stat(struct ipc_namespace *ns, unsigned long *rss, unsigned long *swp) argument 776 shmctl_down(struct ipc_namespace *ns, int shmid, int cmd, struct shmid_ds __user *buf, int version) argument 832 shmctl_nolock(struct ipc_namespace *ns, int shmid, int cmd, int version, void __user *buf) argument 950 struct ipc_namespace *ns; local 1062 struct ipc_namespace *ns; local [all...] |
H A D | util.c | 311 * @ns: ipc namespace 319 static int ipcget_new(struct ipc_namespace *ns, struct ipc_ids *ids, argument 325 err = ops->getnew(ns, params); 332 * @ns: ipc namespace 345 static int ipc_check_perms(struct ipc_namespace *ns, argument 352 if (ipcperms(ns, ipcp, params->flg)) 365 * @ns: ipc namespace 377 static int ipcget_public(struct ipc_namespace *ns, struct ipc_ids *ids, argument 395 err = ops->getnew(ns, params); 410 err = ipc_check_perms(ns, ipc 527 ipcperms(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp, short flag) argument 680 ipcget(struct ipc_namespace *ns, struct ipc_ids *ids, const struct ipc_ops *ops, struct ipc_params *params) argument 727 ipcctl_pre_down_nolock(struct ipc_namespace *ns, struct ipc_ids *ids, int id, int cmd, struct ipc64_perm *perm, int extra_perm) argument 779 struct ipc_namespace *ns; member in struct:ipc_proc_iter [all...] |
H A D | util.h | 25 extern void mq_clear_sbinfo(struct ipc_namespace *ns); 26 extern void mq_put_mnt(struct ipc_namespace *ns); 28 static inline void mq_clear_sbinfo(struct ipc_namespace *ns) { } argument 29 static inline void mq_put_mnt(struct ipc_namespace *ns) { } argument 33 void sem_init_ns(struct ipc_namespace *ns); 34 void msg_init_ns(struct ipc_namespace *ns); 35 void shm_init_ns(struct ipc_namespace *ns); 37 void sem_exit_ns(struct ipc_namespace *ns); 38 void msg_exit_ns(struct ipc_namespace *ns); 39 void shm_exit_ns(struct ipc_namespace *ns); 41 sem_init_ns(struct ipc_namespace *ns) argument 42 msg_init_ns(struct ipc_namespace *ns) argument 43 shm_init_ns(struct ipc_namespace *ns) argument 45 sem_exit_ns(struct ipc_namespace *ns) argument 46 msg_exit_ns(struct ipc_namespace *ns) argument 47 shm_exit_ns(struct ipc_namespace *ns) argument [all...] |