From: Jay Lan <jlan@sgi.com>
To: Guillaume Thouvenin <guillaume.thouvenin@bull.net>
Cc: Andrew Morton <akpm@osdl.org>,
Kaigai Kohei <kaigai@ak.jp.nec.com>,
LSE-Tech <lse-tech@lists.sourceforge.net>,
lkml <linux-kernel@vger.kernel.org>,
Tim Schmielau <tim@physik3.uni-rostock.de>,
erikj@subway.americas.sgi.com, limin@dbear.engr.sgi.com,
jbarnes@sgi.com, elsa-devel <elsa-devel@lists.sourceforge.net>
Subject: Re: [Lse-tech] Re: A common layer for Accounting packages
Date: Wed, 23 Feb 2005 11:11:44 -0800 [thread overview]
Message-ID: <421CD570.7070907@sgi.com> (raw)
In-Reply-To: <1109147623.1738.91.camel@frecb000711.frec.bull.fr>
Guillaume Thouvenin wrote:
> On Tue, 2005-02-22 at 23:20 -0800, Andrew Morton wrote:
>
>>Kaigai Kohei <kaigai@ak.jp.nec.com> wrote:
>>
>>> The common agreement for the method of dealing with process aggregation
>>> has not been constructed yet, I understood. And, we will not able to
>>> integrate each process aggregation model because of its diverseness.
>>>
>>> For example, a process which belong to JOB-A must not belong any other
>>> 'JOB-X' in CSA-model. But, In ELSA-model, a process in BANK-B can concurrently
>>> belong to BANK-B1 which is a child of BANK-B.
>>>
>>> And, there are other defferences:
>>> Whether a process not to belong to any process-aggregation is permitted or not ?
>>> Whether a process-aggregation should be inherited to child process or not ?
>>> (There is possibility not to be inherited in a rule-based process aggregation like CKRM)
>>>
>>> Some process-aggregation model have own philosophy and implemantation,
>>> so it's hard to integrate. Thus, I think that common 'fork/exec/exit' event handling
>>> framework to implement any kinds of process-aggregation.
>
>
> I can add "policies". With ELSA, a process belongs to one or several
> groups and if a process is removed from one group, its children still
> belong to the group. Thus a good idea could be to associate a
> "philosophy" to a group. For exemple, when a group of processes is
> created it can be tagged as UNIQUE or SHARED. UNIQUE means that a
> process that belongs to it could not be added in another group by
> opposition to SHARED. It's not needed inside the kernel.
This makes sense to me. CSA can use the UNIQUE policy to enforce
its "can't escape from job container" philisophy.
>
>
>>We really want to avoid doing such stuff in-kernel if at all possible, of
>>course.
>>
>>Is it not possible to implement the fork/exec/exit notifications to
>>userspace so that a daemon can track the process relationships and perform
>>aggregation based upon individual tasks' accounting? That's what one of
>>the accounting systems is proposing doing, I believe.
>
>
> It's what I'm proposing. The problem is to be alerted when a new process
> is created in order to add it in the correct group of processes if the
> parent belongs to one (or several) groups. The notification can be done
> with the fork connector patch.
I am not quite comfortable of ELSA requesting a fork hook this way.
How many hooks in the stock kernel that are related to accounting? Can
anyone answer this question? I know of 'acct_process()' in exit.c used
by the BSD accounting and ELSA is requesting a hook in fork. If people
raise the same question again a few years later, how many people will
still remember this ELSA hook?
That was the reason i thought a central piece was a good idea. I
would rather see the fork hook is coded in acct.c and then invokes
a routine that handles what ELSA needs. If CSA would adopt the ELSA's
daemon's approach, CSA may also need to use the fork hook.
Actually the acct_process() was modified not long ago to become
a wrapper, which then invokes do_acct_process() which is completely
BSD specific. The fork hook can be the same.
- jay
>
>
>>(In fact, why do we even need the notifications? /bin/ps can work this
>>stuff out).
>
>
> Yes it can but the risk is to lose some forks no?
> I think that /bin/ps is using the /proc interface. If we're polling
> the /proc to catch process creation we may lost some of them. With the
> fork connector we catch all forks and we can check that by using the
> sequence number (incremented by each fork) of the message.
>
> Guillaume
next prev parent reply other threads:[~2005-02-23 19:11 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-19 0:51 A common layer for Accounting packages Jay Lan
2005-02-19 1:16 ` Andrew Morton
2005-02-21 6:51 ` Guillaume Thouvenin
2005-02-22 20:11 ` [Lse-tech] " Jay Lan
2005-02-23 7:30 ` Guillaume Thouvenin
2005-02-21 7:54 ` Kaigai Kohei
2005-02-22 20:26 ` Jay Lan
2005-02-23 7:07 ` Kaigai Kohei
2005-02-23 7:20 ` Andrew Morton
2005-02-23 8:33 ` Guillaume Thouvenin
2005-02-23 8:51 ` Andrew Morton
2005-02-23 9:30 ` Guillaume Thouvenin
2005-02-23 9:36 ` Andrew Morton
2005-02-23 19:11 ` Jay Lan [this message]
2005-02-24 7:42 ` Guillaume Thouvenin
2005-02-23 9:50 ` Tim Schmielau
2005-02-24 22:27 ` Jay Lan
2005-02-23 11:29 ` Kaigai Kohei
2005-02-23 20:48 ` Jay Lan
2005-02-25 5:07 ` Kaigai Kohei
2005-02-25 5:28 ` Andrew Morton
2005-02-25 17:32 ` Jay Lan
2005-02-25 17:45 ` Chris Wright
2005-02-25 18:11 ` Jay Lan
2005-02-25 21:30 ` Andrew Morton
2005-02-25 22:18 ` Jay Lan
2005-02-27 9:49 ` Marcelo Tosatti
2005-02-27 15:20 ` KaiGai Kohei
2005-02-27 14:03 ` Marcelo Tosatti
2005-02-27 19:27 ` David S. Miller
2005-02-28 1:59 ` Kaigai Kohei
2005-02-28 2:32 ` Thomas Graf
2005-02-28 5:17 ` Evgeniy Polyakov
2005-02-28 7:20 ` Guillaume Thouvenin
2005-02-28 7:39 ` Andrew Morton
2005-02-28 8:04 ` Evgeniy Polyakov
2005-02-28 12:10 ` jamal
2005-02-28 9:29 ` Marcelo Tosatti
2005-02-28 13:20 ` Thomas Graf
2005-02-28 13:40 ` jamal
2005-02-28 13:53 ` Thomas Graf
2005-02-28 9:52 ` Marcelo Tosatti
2005-02-28 14:10 ` jamal
2005-02-28 14:25 ` Thomas Graf
2005-02-28 15:31 ` jamal
2005-02-28 16:17 ` Evgeniy Polyakov
2005-03-01 8:21 ` Guillaume Thouvenin
2005-03-01 13:38 ` Kaigai Kohei
2005-03-01 13:53 ` Guillaume Thouvenin
2005-03-01 14:17 ` Evgeniy Polyakov
2005-03-02 4:50 ` Paul Jackson
2005-03-02 8:58 ` Guillaume Thouvenin
2005-03-02 9:06 ` Andrew Morton
2005-03-02 9:25 ` Guillaume Thouvenin
2005-03-02 15:30 ` Paul Jackson
2005-03-01 20:40 ` Paul Jackson
2005-02-24 1:25 ` Paul Jackson
2005-02-24 1:56 ` Jay Lan
2005-02-24 2:07 ` Paul Jackson
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=421CD570.7070907@sgi.com \
--to=jlan@sgi.com \
--cc=akpm@osdl.org \
--cc=elsa-devel@lists.sourceforge.net \
--cc=erikj@subway.americas.sgi.com \
--cc=guillaume.thouvenin@bull.net \
--cc=jbarnes@sgi.com \
--cc=kaigai@ak.jp.nec.com \
--cc=limin@dbear.engr.sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lse-tech@lists.sourceforge.net \
--cc=tim@physik3.uni-rostock.de \
/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