Re: [PATCH v5 6/7] mm: Support address range reclaim

From: Andrew Morton
Date: Tue May 21 2013 - 20:33:58 EST


On Thu, 9 May 2013 16:21:28 +0900 Minchan Kim <minchan@xxxxxxxxxx> wrote:

> This patch adds address range reclaim of a process.
> The requirement is following as,
>
> Like webkit1, it uses a address space for handling multi tabs.
> IOW, it uses *one* process model so all tabs shares address space
> of the process. In such scenario, per-process reclaim is rather
> coarse-grained so this patch supports more fine-grained reclaim
> for being able to reclaim target address range of the process.
> For reclaim target range, you should use following format.
>
> echo [addr] [size-byte] > /proc/pid/reclaim
>
> The addr should be page-aligned.
>
> So now reclaim konb's interface is following as.
>
> echo file > /proc/pid/reclaim
> reclaim file-backed pages only
>
> echo anon > /proc/pid/reclaim
> reclaim anonymous pages only
>
> echo all > /proc/pid/reclaim
> reclaim all pages
>
> echo 0x100000 8K > /proc/pid/reclaim
> reclaim pages in (0x100000 - 0x102000)

This might be going a bit far. The application itself can be modified
to use fadvise/madvise/whatever to release unused pages and that's a
better interface.

Athough it's a bit of a pipe-dream, I do think we should encourage
userspace to go this path, rather than providing ways for hacky admin
tools to go poking around in /proc/pid/maps and whacking apps
externally.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/