Re: [PATCH 1/1] mm: introduce process_reap system call

From: Florian Weimer
Date: Thu Jul 08 2021 - 01:41:27 EST


* Suren Baghdasaryan:

> On Wed, Jul 7, 2021 at 2:47 AM Florian Weimer <fweimer@xxxxxxxxxx> wrote:
>>
>> * Suren Baghdasaryan:
>>
>> > The API is as follows,
>> >
>> > int process_reap(int pidfd, unsigned int flags);
>> >
>> > DESCRIPTION
>> > The process_reap() system call is used to free the memory of a
>> > dying process.
>> >
>> > The pidfd selects the process referred to by the PID file
>> > descriptor.
>> > (See pidofd_open(2) for further information)
>> >
>> > The flags argument is reserved for future use; currently, this
>> > argument must be specified as 0.
>> >
>> > RETURN VALUE
>> > On success, process_reap() returns 0. On error, -1 is returned
>> > and errno is set to indicate the error.
>>
>> I think the manual page should mention what it means for a process to be
>> “dying”, and how to move a process to this state.
>
> Thanks for the suggestion, Florian! Would replacing "dying process"
> with "process which was sent a SIGKILL signal" be sufficient?

That explains very clearly the requirement, but it raises the question
why this isn't an si_code flag for rt_sigqueueinfo, reusing the existing
system call.

Thanks,
Florian