From: Michal Hocko <mhocko@suse.cz>
To: Victor Porton <porton@narod.ru>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
cgroups mailinglist <cgroups@vger.kernel.org>
Subject: Re: Notifying on empty cgroup
Date: Wed, 15 Jan 2014 16:12:18 +0100 [thread overview]
Message-ID: <20140115151218.GO8782@dhcp22.suse.cz> (raw)
In-Reply-To: <409331389795100@web18j.yandex.ru>
On Wed 15-01-14 16:11:40, Victor Porton wrote:
> 15.01.2014, 15:59, "Michal Hocko" <mhocko@suse.cz>:
> > [CCing cgroups mailing list]
> > On Wed 15-01-14 06:12:45, Victor Porton wrote:
> >
> >> I want to write software which needs to receive a signal when the cgroup
> >> created by it becomes empty. (After this the empty cgroup should be deleted
> >> just not to clutter the memory.)
> >>
> >> If the kernel does not support such notifications, it should be improved.
> >> This functionality is crucial for some kinds of software.
> >>
> >> There is /sys/fs/cgroup/systemd/release_agent but I don't understand how to
> >> use it. I don't understand why we would need it at all.
> >
> > "1.4 What does notify_on_release do ?" in
> > Documentation/cgroups/cgroups.txt the kernel source doesn't help?
>
> I've read it. I understand what it does. I don't understand how to use
> it in practice nor
You want to clean up your memcg without any tasks so the script might do
something like:
---
#!/bin/sh
CGROUP="$1"
CGROUP_MNT=`mount | grep cgroup | awk '{print $3}'`
rmdir "$CGROUP_MNT/$CGROUP"
---
> why it is done this way.
I find the interface rather awkward as well but that is a question for
those who have implement it.
The interface will change in the future (sorry I do not have any link to
discussion about the change handy).
> >> Starting a binary on emptying a cgroup with the purpose to notify an other
> >> binary looks like a big overkill.
> >
> > the binary can do rmdir which is what you want, no?
>
> I suppose a base package should do that, not my specific software. Do
> I understand right?
Yes. The notifier works on the root of the cgroup hierarchy so it is a
matter of the admin to set it.
> >> Also my program should work in userspace without the need to use
> >> release_agent which can be accessed only by root.
> >
> > The release_agent is global for all groups so the program doesn't have
> > to care.
>
> Again: What MY program should do?
Nothing. (assuming the only thing you are interested in is removing the
empty group).
[...]
--
Michal Hocko
SUSE Labs
prev parent reply other threads:[~2014-01-15 15:12 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-15 4:12 Victor Porton
2014-01-15 13:59 ` Michal Hocko
2014-01-15 14:11 ` Victor Porton
2014-01-15 15:12 ` Michal Hocko [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140115151218.GO8782@dhcp22.suse.cz \
--to=mhocko@suse.cz \
--cc=cgroups@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=porton@narod.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®