Messages in this thread | | | Date | Tue, 21 May 2013 17:33:32 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH v5 6/7] mm: Support address range reclaim |
| |
On Thu, 9 May 2013 16:21:28 +0900 Minchan Kim <minchan@kernel.org> 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.
| |