All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tommaso Cucinotta <tommaso.cucinotta@sssup.it>
To: linux-kernel@vger.kernel.org
Cc: Peter Zijlstra <peterz@infradead.org>,
	Dhaval Giani <dhaval.giani@gmail.com>,
	Paul Menage <menage@google.com>
Subject: Understanding cgroups
Date: Thu, 28 Oct 2010 17:44:37 +0200	[thread overview]
Message-ID: <4CC99A65.9050706@sssup.it> (raw)

Hi,

I'm trying to get some understanding of the current cgroups in-kernel 
implementation
(after having read Documentation/cgroup* and having browsed a bit the code).
To this purpose, I tried to draw the relationships among the involved 
data structures
(I'm limited to its relationship with [real-time] scheduling), and 
obtained this:

   http://retis.sssup.it/~tommaso/cgroups.odg
   http://retis.sssup.it/~tommaso/cgroups.eps

(You can see in the bottom left part of the diagram a little 
"key/legend/pattern" for representing lists).

I might have done mistakes, however the greatest doubts that I have now 
concern the relative
cardinalities of the various associated items. Namely:
a) why doesn't a cgroup object directly point to a css_set one, but to a 
list of them (via cg_cgroup_list elements) ?
     it seems that a cgroup object may be associated to multiple css_set 
objects, which in turn contain vectors of
     cgroup_subsys_state;
b) however, cgroup.subsys[] would point to a single cgroup_subsys_state 
object per subsys_id, so, what is the
     difference between cgroup.subsys[] and css_set.subsys[] ? (or, are 
these all redundant pointers and point
     to the same cgroup_subsys_state objects ?)
c) is css_set.cg_links used to point to (the head of) a list of 
cg_cgroup_link objects, or is it used to link multiple css_set objects 
into a list ? In the latter case, where is the head of the list pointed 
to from ?

Apologies for the newbie questions that I might have posted; FYI, I'm 
trying to set-up RT scheduling groups without using the VFS-based 
cgroups interface.

Thanks in advance, regards (please, reply in cc to my e-mail address).

     Tommaso

-- 
Tommaso Cucinotta, Computer Engineering PhD, Researcher
ReTiS Lab, Scuola Superiore Sant'Anna, Pisa, Italy
Tel +39 050 882 024, Fax +39 050 882 003
http://retis.sssup.it/people/tommaso


             reply	other threads:[~2010-10-28 15:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-28 15:44 Tommaso Cucinotta [this message]
2010-10-28 17:39 ` Understanding cgroups Dhaval Giani
     [not found] ` <4CC99A65.9050706-gAmJrWFzCps@public.gmane.org>
2010-10-28 17:39   ` Dhaval Giani
2010-10-28 22:22   ` Paul Menage
2010-10-28 22:22 ` Paul Menage

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=4CC99A65.9050706@sssup.it \
    --to=tommaso.cucinotta@sssup.it \
    --cc=dhaval.giani@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=menage@google.com \
    --cc=peterz@infradead.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.