Re: [RFC 1/3] /dev/low_mem_notify

From: Pekka Enberg
Date: Wed Jan 18 2012 - 02:17:04 EST


On Wed, 18 Jan 2012, Minchan Kim wrote:
I didn't look into your code(will do) but as I read description,
still I don't convince we need really some process specific threshold like 99%
I think application can know it by polling /proc/meminfo without this mechanism
if they really want.

I'm not sure if we need arbitrary threshold either. However, we need to support the following cases:

- We're about to swap

- We're about to run out of memory

- We're about to start OOM killing

and I don't think your patch solves that. One possibility is to implement:

VMNOTIFY_TYPE_ABOUT_TO_SWAP
VMNOTIFY_TYPE_ABOUT_TO_OOM
VMNOTIFY_TYPE_ABOUT_TO_OOM_KILL

and maybe rip out support for arbitrary thresholds. Does that more reasonable?

As for polling /proc/meminfo, I'd much rather deliver stats as part of vmnotify_read() because it's easier to extend the ABI rather than adding new fields to /proc/meminfo.

On Wed, 18 Jan 2012, Minchan Kim wrote:
I would like to notify when system has a trobule with memory pressure without
some process specific threshold. Of course, applicatoin can't expect it.(ie,
application can know system memory pressure by /proc/meminfo but it can't know
when swapout really happens). Kernel low mem notify have to give such notification
to user space, I think.

It should be simple to add support for VMNOTIFY_TYPE_MEM_PRESSURE that uses your hooks.

Pekka
--
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/