Re: [PATCH v7 0/7] introduce memory hinting API for external process

From: Andrew Morton
Date: Mon Mar 02 2020 - 16:16:21 EST


On Mon, 2 Mar 2020 11:36:23 -0800 Minchan Kim <minchan@xxxxxxxxxx> wrote:

> Now, we have MADV_PAGEOUT and MADV_COLD as madvise hinting API. With that,
> application could give hints to kernel what memory range are preferred to be
> reclaimed. However, in some platform(e.g., Android), the information
> required to make the hinting decision is not known to the app.
> Instead, it is known to a centralized userspace daemon(e.g., ActivityManagerService),
> and that daemon must be able to initiate reclaim on its own without any app
> involvement.
>
> To solve the concern, this patch introduces new syscall - process_madvise(2).
> Bascially, it's same with madvise(2) syscall but it has some differences.
>
> 1. It needs pidfd of target process to provide the hint
> 2. It supports only MADV_{COLD|PAGEOUT|MERGEABLE|UNMEREABLE} at this moment.
> Other hints in madvise will be opened when there are explicit requests from
> community to prevent unexpected bugs we couldn't support.
> 3. Only privileged processes can do something for other process's address
> space.
>
> For more detail of the new API, please see "mm: introduce external memory hinting API"
> description in this patchset.

Thanks, I grabbed these.

I massaged the patch titles significantly - mainly to alert readers to
the fact that we're proposing a new syscall.

Is a manpage for process_madvise(2) being prepared?