[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6599ad830907131515h3c9622b5v309cf8f13d272bab@mail.gmail.com>
Date: Mon, 13 Jul 2009 15:15:45 -0700
From: Paul Menage <menage@...gle.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
Cc: Vladislav Buzov <vbuzov@...eddedalley.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Containers Mailing List
<containers@...ts.linux-foundation.org>,
Dan Malek <dan@...eddedalley.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Balbir Singh <balbir@...ux.vnet.ibm.com>
Subject: Re: [PATCH 1/1] Memory usage limit notification addition to memcg
On Tue, Jul 7, 2009 at 5:56 PM, KAMEZAWA
Hiroyuki<kamezawa.hiroyu@...fujitsu.com> wrote:
>
> I know people likes to wait for file descriptor to get notification in these days.
> Can't we have "event" file descriptor in cgroup layer and make it reusable for
> other purposes ?
I agree - rather than having to add a separate "wait for value to
cross X threshold" file for each numeric usage value that people might
be concerned about, it would be better to have a generic way to do it
for any file. Given that this is a userspace API, it would be better
to work out at least the generic API first, even if the initial
implementation isn't generic.
Properties that it should support include:
- notification when a value crosses above or below a given threshold
(which would include binary cases such as OOM notification where the
value cross from "not-OOM" to "OOM"
- independent thresholds for different waiters
- epoll support (by using eventfd?)
- automatic wakeup when a cgroup is removed
- maybe optional wakeup when a thread attach occurs?
- not require more than read permissions on the file containing the
value being monitored
I guess there are a few possible ways this could be exposed to userspace:
1) new ioctl on cgroups files. simple but probably not popular
2) new system call. maybe the cleanest, but involves changing every
arch and is hard to script
3) new per-cgroup file to control these e.g:
- create an eventfd
- open the control file to be monitored
- write the "<event_fd>, <control_fd> <threshold> to
cgroup.event_control to link them together
flexible and scriptable but maybe a clumsy interface in general
Paul
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists