lkml.org 
[lkml]   [2017]   [Sep]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RESEND] proc, coredump: add CoreDumping flag to /proc/pid/status
On Wed, 20 Sep 2017 16:06:34 -0700 Roman Gushchin <guro@fb.com> wrote:

> Right now there is no convenient way to check if a process is being
> coredumped at the moment.
>
> It might be necessary to recognize such state to prevent killing
> the process and getting a broken coredump.
> Writing a large core might take significant time, and the process
> is unresponsive during it, so it might be killed by timeout,
> if another process is monitoring and killing/restarting
> hanging tasks.
>
> To provide an ability to detect if a process is in the state of
> being coreduped, we can expose a boolean CoreDumping flag
> in /proc/pid/status.
>
> Example:
> $ cat core.sh
> #!/bin/sh
>
> echo "|/usr/bin/sleep 10" > /proc/sys/kernel/core_pattern
> sleep 1000 &
> PID=$!
>
> cat /proc/$PID/status | grep CoreDumping
> kill -ABRT $PID
> sleep 1
> cat /proc/$PID/status | grep CoreDumping
>
> $ ./core.sh
> CoreDumping: 0
> CoreDumping: 1

I assume you have some real-world use case which benefits from this.

> fs/proc/array.c | 6 ++++++
> 1 file changed, 6 insertions(+)

A Documentation/ would be appropriate? Include a brief mention of
*why* someone might want to use this...


\
 
 \ /
  Last update: 2017-09-28 01:32    [W:0.792 / U:0.452 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site