On 02.07.21 17:27, Christian Brauner wrote:
On Thu, Jul 01, 2021 at 03:59:48PM -0700, Suren Baghdasaryan wrote:
On Wed, Jun 30, 2021 at 5:44 PM Andy Lutomirski <luto@xxxxxxxxxx> wrote:
On Wed, Jun 30, 2021 at 2:45 PM Johannes Weiner <hannes@xxxxxxxxxxx> wrote:
On Wed, Jun 30, 2021 at 11:51:36AM -0700, Suren Baghdasaryan wrote:
On Wed, Jun 30, 2021 at 11:26 AM Andy Lutomirski <luto@xxxxxxxxxx> wrote:
Also, please consider removing all mention of the word "reap" from the
user API. For better or for worse, "reap" in UNIX refers to what
happens when a dead task gets wait()ed. I sincerely wish I could go
back in time and gently encourage whomever invented that particular
abomination to change their mind, but my time machine doesn't work.
I see. Thanks for the note. How about process_mem_release() and
replacing reap with release everywhere?
I don't quite understand the objection. This syscall works on tasks
that are at the end of their life, right? Isn't something like
process_mreap() establishing exactly the mental link we want here?
Release is less descriptive for what this thing is to be used for.
For better or for worse, "reap" means to make a zombie pid go away.
From the description, this new operation takes a dying process (not
necessarily a zombie yet) and aggressively frees its memory. This is
a different optioneration.
How about "free_dying_process_memory"?
process_mreap sounds definitely better and in line with names like
process_madvise. So maybe we can use it?
That one was my favorite from the list I gave too but maybe we can
satisfy Andy too if we use one of:
- process_mfree()
- process_mrelease()
FWIW, I tend to like process_mrelease(), due to the implied "release"
("free the memory if there are no other references") semantics. Further,
a new syscall feels cleaner than some magic sysfs/procfs toggle. Just my
2 cents.
--
Thanks,
David / dhildenb