Author: kp Date: Sat Dec 29 14:48:51 2018 New Revision: 342591 URL: https://svnweb.freebsd.org/changeset/base/342591
Log: Make kernel print jail ID when logging a process exit Kernel now includes jail ID when logging a process exit. jid is 0 for unjailed processes. Submitted by: Marie Helene Kvello-Aune <free...@mhka.no> Relnotes: yes Sponsored by: Modirum MDPay Differential Revision: https://reviews.freebsd.org/D18618 Modified: head/sys/kern/kern_sig.c Modified: head/sys/kern/kern_sig.c ============================================================================== --- head/sys/kern/kern_sig.c Sat Dec 29 06:52:52 2018 (r342590) +++ head/sys/kern/kern_sig.c Sat Dec 29 14:48:51 2018 (r342591) @@ -3094,12 +3094,17 @@ proc_wkilled(struct proc *p) void killproc(struct proc *p, char *why) { + int jid = -1; + if (p->p_ucred && p->p_ucred->cr_prison) + jid = p->p_ucred->cr_prison->pr_id; + PROC_LOCK_ASSERT(p, MA_OWNED); CTR3(KTR_PROC, "killproc: proc %p (pid %d, %s)", p, p->p_pid, p->p_comm); - log(LOG_ERR, "pid %d (%s), uid %d, was killed: %s\n", p->p_pid, - p->p_comm, p->p_ucred ? p->p_ucred->cr_uid : -1, why); + log(LOG_ERR, "pid %d (%s), jid %d, uid %d, was killed: %s\n", + p->p_pid, p->p_comm, jid, + p->p_ucred ? p->p_ucred->cr_uid : -1, why); proc_wkilled(p); kern_psignal(p, SIGKILL); } @@ -3116,7 +3121,11 @@ void sigexit(struct thread *td, int sig) { struct proc *p = td->td_proc; + int jid = -1; + if (p->p_ucred && p->p_ucred->cr_prison) + jid = p->p_ucred->cr_prison->pr_id; + PROC_LOCK_ASSERT(p, MA_OWNED); p->p_acflag |= AXSIG; /* @@ -3142,8 +3151,8 @@ sigexit(struct thread *td, int sig) sig |= WCOREFLAG; if (kern_logsigexit) log(LOG_INFO, - "pid %d (%s), uid %d: exited on signal %d%s\n", - p->p_pid, p->p_comm, + "pid %d (%s), jid %d, uid %d: exited on " + "signal %d%s\n", p->p_pid, p->p_comm, jid, td->td_ucred ? td->td_ucred->cr_uid : -1, sig &~ WCOREFLAG, sig & WCOREFLAG ? " (core dumped)" : ""); _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"