[lkml]   [2010]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC/RFT PATCH v3] sched: automated per tty task groups
    On Tue, Nov 16, 2010 at 11:56:33AM -0800, Paul Menage wrote:
    > On Tue, Nov 16, 2010 at 11:45 AM, Linus Torvalds
    > <> wrote:
    > >
    > > In a system daemon? Good luck with that. It's a nightmare. Maybe you
    > > could just poll all the cgroups, and try to remove them once a minute,
    > > and if they are empty it works. Or something like that. But what a
    > > hacky thing it would be.
    > There's an existing cgroups API - release_agent and notify_on_release
    > - whereby the kernel will spawn a userspace command once a given
    > cgroup is completely empty. It's intended for pretty much exactly this
    > purpose.

    Yes. And it seems to be working just fine for me. I modiefied Lennart's
    script a bit to achieve that.

    Addition to my .bashrc.

    if [ "$PS1" ] ; then
    mkdir -m 0700 -p /cgroup/cpu/$$
    echo 1 > /cgroup/cpu/$$/notify_on_release
    echo $$ > /cgroup/cpu/$$/tasks

    I created one file /bin/rmcgroup to clean up the cgroup.

    rmdir /cgroup/cpu/$1

    And did following to mount cgroup and setup empty group notification.

    mount -t cgroup -o cpu none /cgroup/cpu
    echo "/bin/rmcgroup" > /cgroup/cpu/release_agent

    And it works fine. Upon ssh to my box, a cpu cgroup is automatically
    created and upon exiting the shell, this group is automatically destroyed.

    So API/interface for automatically reclaiming the cgroup once it is empty
    seems to be pretty simple and works.


     \ /
      Last update: 2010-11-16 21:21    [W:0.031 / U:78.364 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site