public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
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


  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