fork.c (27eb2c4b3d3e13f376a359e293c212a2e9407af5) fork.c (b57922b6c76c3ee401bb32fd3f298409dd6e6a53)
1/*
2 * linux/kernel/fork.c
3 *
4 * Copyright (C) 1991, 1992 Linus Torvalds
5 */
6
7/*
8 * 'fork.c' contains the help-routines for the 'fork' system call

--- 1185 unchanged lines hidden (view full) ---

1194
1195#ifdef CONFIG_PROVE_LOCKING
1196 DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
1197 DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
1198#endif
1199 retval = -EAGAIN;
1200 if (atomic_read(&p->real_cred->user->processes) >=
1201 task_rlimit(p, RLIMIT_NPROC)) {
1/*
2 * linux/kernel/fork.c
3 *
4 * Copyright (C) 1991, 1992 Linus Torvalds
5 */
6
7/*
8 * 'fork.c' contains the help-routines for the 'fork' system call

--- 1185 unchanged lines hidden (view full) ---

1194
1195#ifdef CONFIG_PROVE_LOCKING
1196 DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
1197 DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
1198#endif
1199 retval = -EAGAIN;
1200 if (atomic_read(&p->real_cred->user->processes) >=
1201 task_rlimit(p, RLIMIT_NPROC)) {
1202 if (!capable(CAP_SYS_ADMIN) && !capable(CAP_SYS_RESOURCE) &&
1203 p->real_cred->user != INIT_USER)
1202 if (p->real_cred->user != INIT_USER &&
1203 !capable(CAP_SYS_RESOURCE) && !capable(CAP_SYS_ADMIN))
1204 goto bad_fork_free;
1205 }
1206 current->flags &= ~PF_NPROC_EXCEEDED;
1207
1208 retval = copy_creds(p, clone_flags);
1209 if (retval < 0)
1210 goto bad_fork_free;
1211

--- 726 unchanged lines hidden ---
1204 goto bad_fork_free;
1205 }
1206 current->flags &= ~PF_NPROC_EXCEEDED;
1207
1208 retval = copy_creds(p, clone_flags);
1209 if (retval < 0)
1210 goto bad_fork_free;
1211

--- 726 unchanged lines hidden ---