Files
android_kernel_xiaomi_sm8450/kernel
Eric Paris b57922b6c7 fork: reorder permissions when violating number of processes limits
When a task is attempting to violate the RLIMIT_NPROC limit we have a
check to see if the task is sufficiently priviledged.  The check first
looks at CAP_SYS_ADMIN, then CAP_SYS_RESOURCE, then if the task is uid=0.

A result is that tasks which are allowed by the uid=0 check are first
checked against the security subsystem.  This results in the security
subsystem auditting a denial for sys_admin and sys_resource and then the
task passing the uid=0 check.

This patch rearranges the code to first check uid=0, since if we pass that
we shouldn't hit the security system at all.  We then check sys_resource,
since it is the smallest capability which will solve the problem.  Lastly
we check the fallback everything cap_sysadmin.  We don't want to give this
capability many places since it is so powerful.

This will eliminate many of the false positive/needless denial messages we
get when a root task tries to violate the nproc limit.  (note that
kthreads count against root, so on a sufficiently large machine we can
actually get past the default limits before any userspace tasks are
launched.)

Signed-off-by: Eric Paris <eparis@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-07-03 16:08:03 -07:00
..
2013-07-01 11:18:53 +02:00
2013-04-22 07:09:06 -07:00
2012-05-31 17:49:27 -07:00
2013-07-03 16:08:02 -07:00
2013-04-15 13:25:16 +02:00
2013-06-25 23:11:19 +02:00
2012-12-20 17:40:19 -08:00
2012-05-29 23:28:41 -04:00
2013-05-05 00:16:35 -04:00
2013-04-30 17:04:03 -07:00
2013-07-03 16:08:02 -07:00