forked from Minki/linux
coredump: add new %P variable in core_pattern
Add a new %P variable to be used in core_pattern. This variable contains the global PID (PID in the init namespace) as %p contains the PID in the current namespace which isn't always what we want. The main use for this is to make it easier to handle crashes that happened within a container. With that new variables it's possible to have the crashes dumped into the container or forwarded to the host with the right PID (from the host's point of view). Signed-off-by: Stéphane Graber <stgraber@ubuntu.com> Reported-by: Hans Feldt <hans.feldt@ericsson.com> Cc: Alexander Viro <viro@zeniv.linux.org.uk> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Andy Whitcroft <apw@canonical.com> Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
73af963f9f
commit
65aafb1e74
@ -182,6 +182,7 @@ core_pattern is used to specify a core dumpfile pattern name.
|
||||
%<NUL> '%' is dropped
|
||||
%% output one '%'
|
||||
%p pid
|
||||
%P global pid (init PID namespace)
|
||||
%u uid
|
||||
%g gid
|
||||
%d dump mode, matches PR_SET_DUMPABLE and
|
||||
|
@ -190,6 +190,11 @@ static int format_corename(struct core_name *cn, struct coredump_params *cprm)
|
||||
err = cn_printf(cn, "%d",
|
||||
task_tgid_vnr(current));
|
||||
break;
|
||||
/* global pid */
|
||||
case 'P':
|
||||
err = cn_printf(cn, "%d",
|
||||
task_tgid_nr(current));
|
||||
break;
|
||||
/* uid */
|
||||
case 'u':
|
||||
err = cn_printf(cn, "%d", cred->uid);
|
||||
|
Loading…
Reference in New Issue
Block a user