All of lore.kernel.org
 help / color / mirror / Atom feed
From: Luke Leighton <lkcl@lkcl.net>
To: linux-kernel@vger.kernel.org
Subject: Re: cgroup: status-quo and userland efforts
Date: Tue, 3 Mar 2015 21:17:21 +0000 (UTC)	[thread overview]
Message-ID: <loom.20150303T215649-314@post.gmane.org> (raw)
In-Reply-To: 20130627010427.GF4536@htj.dyndns.org

Tejun Heo <tj@...> writes:


> I don't really understand your example anyway because you can classify
> by DTF / non-DTF first and then just propagate cpuset settings along.
> You won't lose anything that way, right?

 without spoiling the fun by reading ahead, based on the extreme
 complexity of what tim's team have spent probably man-decades
 possibly even getting on for a man-century getting right, i'm guessing
 two things: (a) that he will have said "we lose everything we
 worked to achieve over the past few years" and (b) "what we have
 now, whilst extremely complex, works really really well: why would
 we even remotely contemplate changing / losing it / replacing it
 with something that, from our deep level of expertise which we
 seem unable to get across to you quite how complex it is, we *know*
 will simply not possibly be adequate".

 tim: the only thing i can suggest here which may help is that
 you discuss seriously amongst the team as to whether to fork the
 functionality present in the linux kernel re hierarchical cgroups,
 and to maintain it indefinitely.
 

> I wrote about that many times, but here are two of the problems.
> 
> * There's no way to designate a cgroup to a resource, because cgroup
>   is only defined by the combination of who's looking at it for which
>   controller.  That's how you end up with tagging the same resource
>   multiple times for different controllers and even then it's broken
>   as when you move resources from one cgroup to another, you can't
>   tell what to do with other tags.
> 
>   While allowing obscene level of flexibility, multiple hierarchies
>   destroy a very fundamental concept that it *should* provide - that
>   of a resource container.  It can't because a "cgroup" is undefined
>   under multiple hierarchies.

 ok, there is an alternative to hierarchies, which has precedent
 (and, importantly, a set of userspace management tools as well as
  existing code in the linux kernel), and it's the FLASK model which
  you know as SE/Linux.

 whilst the majority of people view management to be "hierarchical"
 (so there is a top dog or God process and everything trickles down
  from that), this is viewed as such an anathema in the security
 industry that someone came up with a formal specification for the
 real-world way in which permissions are managed, and it's called the
 FLASK model.

 basically you have a security policy which may, in its extreme limits,
 either contain absolutely all and any permissions (in the case of
 SE/Linux that's quite literally every single system call), or it may
 contain absolutely none.

 *but* - and this is the key bit: when a process exec's a new one,
 there is *no correlation* between the amount of permissions that the
 new child process has and its parent.  in other words, the security
 policy *may* say that a parent may exec a process which has *more*
 permissions (or even an entirely different set) than the parent.

 in other words there *is* no hierarchy.  it's all "flat", with
 inter-relationships.

 now, the way in which the security policy is expressed is in an m4
 macro language that may contain wildcards and includes and macros and
 functions and so on, meaning that its expression can be kept really
 quite simple if properly managed (and the SE/Linux team do an
 extraordinarily good job of doing exactly that).

 basically the reason why i mention this, tejun, is because it has
 distinct advantages.  intuitively i am guessing that the reason why
 you are freaking out about hierarchies is because it is effectively
 potentially infinite depth.  the reason why i mention SE/Linux is
 because it is effectively completely flat, and the responsibility
 for creating hierarchies (or not) is down to the userspace tools
 that compile the m4 macros into the binary files that the kernel
 reads and acts upon.

 so i think you'll find that if you investigate this approach and
 copy it, you should be able to keep the inherent simplicity of
 a "unified" underlying approach, but not have tim's team freaking
 out because they would be able to create policy files based on
 a hierarchical arrangement.

 it would also mean that policies could be written that ensure lxc
 doesn't need to get rewritten; PID1 could be allocated specific
 permissions that it can manage, and so on.

 does that make any sense?

 l.



  parent reply	other threads:[~2015-03-03 21:20 UTC|newest]

Thread overview: 205+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-06  1:21 cgroup: status-quo and userland efforts Tejun Heo
2013-04-06  1:21 ` Tejun Heo
     [not found] ` <20130406012159.GA17159-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-04-08 13:46   ` Glauber Costa
2013-04-08 13:46     ` Glauber Costa
2013-04-08 23:32     ` Lennart Poettering
2013-04-08 23:32       ` Lennart Poettering
2013-04-09  7:37       ` Glauber Costa
2013-04-09  7:37         ` Glauber Costa
     [not found]       ` <51635371.7070104-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-04-09  7:37         ` Glauber Costa
2013-04-09 19:11         ` Tejun Heo
2013-04-09 19:11           ` Tejun Heo
     [not found]     ` <5162CA21.4060108-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2013-04-08 18:00       ` [Workman-devel] " Vivek Goyal
2013-04-08 18:00         ` Vivek Goyal
2013-04-08 18:26       ` Tejun Heo
2013-04-08 18:26         ` Tejun Heo
2013-04-08 23:32       ` Lennart Poettering
2013-04-08 17:59   ` [Workman-devel] " Vivek Goyal
2013-04-08 17:59     ` Vivek Goyal
     [not found]     ` <20130408175925.GE28292-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-04-08 18:16       ` Tejun Heo
2013-04-08 18:16         ` Tejun Heo
     [not found]         ` <20130408181607.GI3021-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-04-08 18:49           ` Tejun Heo
2013-04-08 18:49             ` Tejun Heo
2013-04-08 19:11           ` Vivek Goyal
2013-04-08 19:11             ` Vivek Goyal
     [not found]             ` <20130408191105.GG28292-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-04-08 19:20               ` Tejun Heo
2013-04-08 19:20                 ` Tejun Heo
     [not found]                 ` <20130408192024.GL3021-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-04-08 19:46                   ` Vivek Goyal
2013-04-08 19:46                     ` Vivek Goyal
2013-04-08 20:02                     ` Tejun Heo
2013-04-08 20:02                       ` Tejun Heo
     [not found]                     ` <20130408194630.GH28292-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-04-08 20:02                       ` Tejun Heo
2013-04-09  9:50   ` Daniel P. Berrange
2013-04-09  9:50     ` Daniel P. Berrange
     [not found]     ` <20130409095024.GI25576-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-04-09 19:38       ` Tejun Heo
2013-04-09 19:38         ` Tejun Heo
     [not found]         ` <20130409193851.GJ6186-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-04-09 19:46           ` Tejun Heo
2013-04-09 19:46             ` Tejun Heo
     [not found]             ` <20130409194640.GK6186-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-04-09 21:04               ` Serge Hallyn
2013-04-09 21:04                 ` Serge Hallyn
2013-04-09 21:11                 ` Tejun Heo
2013-04-09 21:11                 ` Tejun Heo
2013-04-09 21:11                   ` Tejun Heo
2013-04-16 11:17   ` Li Zefan
2013-04-22 21:26   ` Tim Hockin
2013-04-16 11:17 ` Li Zefan
2013-04-16 11:17   ` Li Zefan
     [not found]   ` <516D333D.4040703-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2013-04-16 17:10     ` Tejun Heo
2013-04-16 17:10       ` Tejun Heo
2013-04-17  1:29       ` Li Zefan
2013-04-17  1:29         ` Li Zefan
     [not found]       ` <20130416171056.GA2874-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-04-17  1:29         ` Li Zefan
2013-04-22 21:26 ` Tim Hockin
2013-04-22 21:26   ` Tim Hockin
     [not found]   ` <CAAAKZwvh_R2Xz--bmSLiN33fsqKanOJMq_6+6hoFWFRx38O4gA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-22 21:41     ` Tejun Heo
2013-04-22 21:41       ` Tejun Heo
     [not found]       ` <20130422214159.GG12543-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-04-22 22:33         ` Tim Hockin
2013-04-22 22:33       ` Tim Hockin
2013-04-22 22:33         ` Tim Hockin
     [not found]         ` <CAAAKZwuXJwwyj7KSqb7rZ+nrTwBWEaUCWfa7kWecTBnHL8koGw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-22 23:13           ` Tim Hockin
2013-06-22 23:13         ` Tim Hockin
2013-06-22 23:13           ` Tim Hockin
     [not found]           ` <CAAAKZwvP_7wBBYMmtFuiE2hZt=ByaLrnTyiR83CZr3OMip63Gg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-25  0:01             ` Tejun Heo
2013-06-25  0:01               ` Tejun Heo
2013-06-25  4:07               ` Tim Hockin
2013-06-25  4:07                 ` Tim Hockin
     [not found]                 ` <CAAAKZwt09k-qUwLCnMpAQeYJ-S0XtkjXe4=bJ-G_fcrkAqEzoA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-26 21:20                   ` Tejun Heo
2013-06-26 21:20                     ` Tejun Heo
2013-06-27  0:06                     ` Tim Hockin
2013-06-27  0:06                       ` Tim Hockin
2013-06-26 23:14                       ` David Lang
     [not found]                       ` <CAAAKZws1qkSik4G4pRr7z+067Jp9-jHfpx9-euqbvmdHjoN_Zg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-26 23:14                         ` David Lang
2013-06-27  1:04                         ` Tejun Heo
2013-06-27  1:04                           ` Tejun Heo
     [not found]                           ` <20130627010427.GF4536-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-06-27  3:42                             ` Tim Hockin
2013-06-27  3:42                               ` Tim Hockin
     [not found]                               ` <CAAAKZwsMT7FRccyVxSn77GR8+9JsSeqmDO6oOy7ycNCY7Desnw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-27 17:38                                 ` Tejun Heo
2013-06-27 17:38                                   ` Tejun Heo
2013-06-27 20:46                                   ` Tim Hockin
2013-06-27 20:46                                     ` Tim Hockin
     [not found]                                     ` <CAAAKZwvabGRsce43ymru7OBr0LX93DRnTVkzn-nhahTR6yMUZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-27 21:04                                       ` Tejun Heo
2013-06-27 21:04                                         ` Tejun Heo
     [not found]                                         ` <20130627210445.GA22860-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-28 18:44                                           ` Tim Hockin
2013-06-28 18:44                                             ` Tim Hockin
     [not found]                                             ` <CAAAKZwtOnpATCmRcOpsXaLZ8sQDs2Z=iZb8FrqG=bajNAOBnRg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-29 16:40                                               ` Tejun Heo
2013-06-29 16:40                                                 ` Tejun Heo
2015-03-03 21:53                                                 ` Luke Leighton
     [not found]                                   ` <20130627173809.GB5599-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-27 20:46                                     ` Tim Hockin
2015-03-03 21:38                                   ` Luke Leighton
2015-03-03 21:17                           ` Luke Leighton [this message]
2015-03-04  5:08                             ` David Lang
2015-03-04 11:27                               ` Luke Kenneth Casson Leighton
2015-03-04 20:08                                 ` David Lang
     [not found]                     ` <20130626212047.GB4536-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-06-27  0:06                       ` Tim Hockin
2013-06-27  5:45                       ` Mike Galbraith
2013-06-27  5:45                     ` Mike Galbraith
2013-06-27  5:45                       ` Mike Galbraith
2013-06-27 13:22                       ` Serge Hallyn
2013-06-27 13:22                         ` Serge Hallyn
2013-06-27 15:29                         ` Tim Hockin
2013-06-27 15:29                         ` Tim Hockin
2013-06-27 15:29                           ` Tim Hockin
2013-06-27 16:18                           ` Serge Hallyn
2013-06-27 16:18                             ` Serge Hallyn
2015-03-03 22:00                             ` Luke Leighton
     [not found]                           ` <CAAAKZwt9QdddFrEjvdBsi3sbQXScKyzY=vZpYXqTwjGUebH1Ag-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-27 16:18                             ` Serge Hallyn
2013-06-27 17:48                         ` Tejun Heo
2013-06-27 17:48                           ` Tejun Heo
     [not found]                           ` <20130627174850.GC5599-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-27 18:14                             ` Serge Hallyn
2013-06-27 18:14                           ` Serge Hallyn
2013-06-27 18:14                             ` Serge Hallyn
2013-06-27 18:45                             ` Tejun Heo
2013-06-27 18:45                               ` Tejun Heo
     [not found]                               ` <20130627184541.GA6400-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-27 18:51                                 ` Serge Hallyn
2013-06-27 18:51                               ` Serge Hallyn
2013-06-27 18:51                                 ` Serge Hallyn
2013-06-27 18:52                                 ` Tejun Heo
2013-06-27 18:52                                   ` Tejun Heo
2013-06-27 18:52                                 ` Tejun Heo
2013-06-27 20:52                             ` Tim Hockin
2013-06-27 20:52                               ` Tim Hockin
2015-03-03 22:08                           ` Luke Leighton
2013-06-28  9:09                         ` [Workman-devel] " Daniel P. Berrange
2013-06-28  9:09                           ` Daniel P. Berrange
2013-06-28 15:53                           ` Serge Hallyn
2013-06-28 15:53                             ` Serge Hallyn
2013-06-28 18:58                             ` Tim Hockin
2013-06-28 18:58                               ` Tim Hockin
2015-03-03 22:20                             ` Luke Leighton
     [not found]                           ` <20130628090910.GB2507-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-06-28 15:53                             ` Serge Hallyn
     [not found]                       ` <1372311907.5871.78.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2013-06-27 13:22                         ` Serge Hallyn
2013-06-27 18:01                         ` Tejun Heo
2013-06-27 18:01                       ` Tejun Heo
2013-06-27 18:01                         ` Tejun Heo
2013-06-28  3:46                         ` Mike Galbraith
2013-06-28  3:46                           ` Mike Galbraith
     [not found]                           ` <1372391198.5989.110.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2013-06-28  4:09                             ` Tejun Heo
2013-06-28  4:09                           ` Tejun Heo
2013-06-28  4:09                             ` Tejun Heo
2013-06-28  4:49                             ` Mike Galbraith
2013-06-28  4:49                               ` Mike Galbraith
     [not found]                               ` <1372394950.5989.128.camel-YqMYhexLQo31wTEvPJ5Q0F6hYfS7NtTn@public.gmane.org>
2013-06-28  5:01                                 ` Tejun Heo
2013-06-28  5:01                               ` Tejun Heo
2013-06-28  5:01                                 ` Tejun Heo
     [not found]                                 ` <20130628050138.GD2500-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-06-28  6:00                                   ` Mike Galbraith
2013-06-28  6:00                                     ` Mike Galbraith
2013-06-28 15:05                                   ` Michal Hocko
2013-06-28 15:05                                 ` Michal Hocko
2013-06-28 15:05                                   ` Michal Hocko
     [not found]                                   ` <20130628150513.GD5125-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-06-28 18:01                                     ` [Workman-devel] " Vivek Goyal
2013-06-28 18:01                                       ` Vivek Goyal
     [not found]                                       ` <20130628180155.GD16483-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-06-28 19:59                                         ` Daniel P. Berrange
2013-06-28 19:59                                           ` Daniel P. Berrange
     [not found]                                           ` <20130628195917.GG2507-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-06-28 22:40                                             ` Serge Hallyn
2013-06-28 22:40                                           ` Serge Hallyn
2013-06-28 22:40                                             ` Serge Hallyn
2013-06-28 22:43                                             ` Tejun Heo
2013-06-28 22:43                                             ` Tejun Heo
2013-06-28 22:43                                               ` Tejun Heo
2013-06-30 18:38                                         ` Michal Hocko
2013-06-30 18:38                                       ` Michal Hocko
2013-06-30 18:38                                         ` Michal Hocko
     [not found]                                         ` <20130630183838.GB23731-2MMpYkNvuYDjFM9bn6wA6Q@public.gmane.org>
2013-07-15 18:49                                           ` Vivek Goyal
2013-07-15 18:49                                             ` Vivek Goyal
     [not found]                                             ` <20130715184940.GG27338-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-07-23 14:48                                               ` Michal Hocko
2013-07-23 14:48                                             ` Michal Hocko
2013-07-23 14:48                                               ` Michal Hocko
2013-06-28 18:30                                     ` Tejun Heo
2013-06-28 18:30                                       ` Tejun Heo
2013-06-28 18:53                                     ` Tim Hockin
2013-06-28 18:53                                       ` Tim Hockin
     [not found]                                       ` <CAAAKZwtqYe-c0bfkgHFbzsOKVHifjTwkqcpci=uS1JwqS9TJHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-28 19:01                                         ` Vrijendra (वृजेन्द्र) Gokhale
2013-06-29  1:48                                         ` Lennart Poettering
2013-06-29  1:48                                           ` Lennart Poettering
     [not found]                                           ` <51CE3CE0.9010506-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-06-29  3:05                                             ` Tim Hockin
2013-06-29  3:05                                               ` Tim Hockin
     [not found]                                               ` <CAAAKZwuzhSzPj99HZW=KD4emGXZbcsjsUu=+TCpafhs9MKD2JA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-30 19:39                                                 ` Lennart Poettering
2013-06-30 19:39                                                   ` Lennart Poettering
2013-07-02 23:57                                                   ` Thomas Gleixner
2013-07-02 23:57                                                     ` Thomas Gleixner
     [not found]                                                     ` <alpine.DEB.2.02.1307030021480.4013-3cz04HxQygjZikZi3RtOZ1XZhhPuCNm+@public.gmane.org>
2013-07-03  0:44                                                       ` Kay Sievers
2013-07-03 17:11                                                       ` James Bottomley
2013-07-03  0:44                                                     ` Kay Sievers
2013-07-03  0:44                                                       ` Kay Sievers
2013-07-03  7:37                                                       ` Borislav Petkov
2013-07-03  7:37                                                         ` Borislav Petkov
2013-07-03  9:30                                                       ` Thomas Gleixner
2013-07-03  9:30                                                         ` Thomas Gleixner
2013-07-09 23:12                                                       ` Jiri Kosina
2013-07-09 23:12                                                         ` Jiri Kosina
     [not found]                                                       ` <CAPXgP12AyogbFX_hPPmQD5GFG0-+_crsnHF3epDZSRds3-WNtQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-03  7:37                                                         ` Borislav Petkov
2013-07-03  9:30                                                         ` Thomas Gleixner
2013-07-09 23:12                                                         ` Jiri Kosina
2013-07-03 17:11                                                     ` James Bottomley
2013-07-03 17:11                                                       ` James Bottomley
     [not found]                                                   ` <51D08976.6040005-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-07-01  6:06                                                     ` Tim Hockin
2013-07-01  6:06                                                       ` Tim Hockin
2013-07-02 23:57                                                     ` Thomas Gleixner
     [not found]                             ` <20130628040930.GC2500-Gd/HAXX7CRxy/B6EtB590w@public.gmane.org>
2013-06-28  4:49                               ` Mike Galbraith
     [not found]                         ` <20130627180143.GD5599-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-28  3:46                           ` Mike Galbraith
2013-06-28 19:18                           ` Andy Lutomirski
2013-06-28 19:18                             ` Andy Lutomirski
     [not found]                             ` <51CDE18E.8080009-kltTT9wpgjJwATOyAt5JVQ@public.gmane.org>
2013-06-28 19:36                               ` Serge Hallyn
2013-06-28 19:36                             ` Serge Hallyn
2013-06-28 19:36                               ` Serge Hallyn
     [not found]               ` <20130625000118.GT1918-9pTldWuhBndy/B6EtB590w@public.gmane.org>
2013-06-25  4:07                 ` Tim Hockin

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=loom.20150303T215649-314@post.gmane.org \
    --to=lkcl@lkcl.net \
    --cc=linux-kernel@vger.kernel.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.