summaryrefslogtreecommitdiffstats
path: root/fs/overlayfs
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@redhat.com>2019-01-04 00:28:11 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2019-01-04 22:13:47 +0100
commit655c16a8ce9c15842547f40ce23fd148aeccc074 (patch)
tree6008b24bf4add9cd20d479dd53eebbc56ce1fd74 /fs/overlayfs
parentexec: load_script: don't blindly truncate shebang string (diff)
downloadlinux-655c16a8ce9c15842547f40ce23fd148aeccc074.tar.xz
linux-655c16a8ce9c15842547f40ce23fd148aeccc074.zip
exec: separate MM_ANONPAGES and RLIMIT_STACK accounting
get_arg_page() checks bprm->rlim_stack.rlim_cur and re-calculates the "extra" size for argv/envp pointers every time, this is a bit ugly and even not strictly correct: acct_arg_size() must not account this size. Remove all the rlimit code in get_arg_page(). Instead, add bprm->argmin calculated once at the start of __do_execve_file() and change copy_strings to check bprm->p >= bprm->argmin. The patch adds the new helper, prepare_arg_pages() which initializes bprm->argc/envc and bprm->argmin. [oleg@redhat.com: fix !CONFIG_MMU version of get_arg_page()] Link: http://lkml.kernel.org/r/20181126122307.GA1660@redhat.com [akpm@linux-foundation.org: use max_t] Link: http://lkml.kernel.org/r/20181112160910.GA28440@redhat.com Signed-off-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Kees Cook <keescook@chromium.org> Tested-by: Guenter Roeck <linux@roeck-us.net> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Cc: Michal Hocko <mhocko@suse.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/overlayfs')
0 files changed, 0 insertions, 0 deletions