All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: "Serge E. Hallyn" <serue@us.ibm.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
	herbert@13thfloor.at, dev@sw.ru, linux-kernel@vger.kernel.org,
	sam@vilain.net, xemul@sw.ru, haveblue@us.ibm.com, clg@fr.ibm.com,
	frankeh@us.ibm.com
Subject: Re: [PATCH 7/7] uts namespaces: Implement CLONE_NEWUTS flag
Date: Tue, 2 May 2006 19:30:44 +0200	[thread overview]
Message-ID: <200605021930.45068.ak@suse.de> (raw)
In-Reply-To: <20060502172031.GA22923@sergelap.austin.ibm.com>

On Tuesday 02 May 2006 19:20, Serge E. Hallyn wrote:
> Quoting Andi Kleen (ak@suse.de):
> > On Tuesday 02 May 2006 10:03, Eric W. Biederman wrote:
> > 7 additional bits will probably not be enough. I still don't
> > quite understand why you want individual bits for everything.
> > Why not group them into logical pieces? 
> 
> I wouldn't be surprised if it makes sense to combine some of them.  For
> instance, perhaps utsname and networking?

I frankly would just combine everything new.

> 
> > Have a proxy structure which has pointers to the many name spaces and a bit
> > mask for "namespace X is different".
> 
> different from what?

>From the parent.

> 
> Oh, you mean in case we want to allow cloning a namespace outside of
> fork *without* cloning the nsproxy struct?

Basically every time any name space changes you need a new nsproxy.

> 
> > This structure would be reference
> > counted. task_struct has a single pointer to it.
> 
> If it is reference counted, that implies it is shared between some
> processes.  But namespace pointers themselves are shared between some of
> these nsproxy's.  The lifetime mgmt here is one reason I haven't tried a
> patch to do this.

The livetime management is no different from having individual pointers.

> > With many name spaces you would have smaller task_struct, less cache 
> > foot print, better cache use of task_struct because slab cache colouring
> > will still work etc.
> 
> I suppose we could run some performance tests with some dummy namespace
> pointers?  9 void *'s directly in the task struct, and the same inside a
> refcounted container struct.  The results might add some urgency to
> implementing the struct nsproxy.

Not sure you'll notice too much difference on the beginning. I am just
the opinion memory/cache bloat needs to be attacked at the root, not
when it's too late.

-Andi

  reply	other threads:[~2006-05-02 17:31 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-01 19:53 [PATCH 2/7] uts namespaces: switch to using uts namespaces Serge E. Hallyn
2006-05-01 19:53 ` [PATCH 3/7] uts namespaces: use init_utsname when appropriate Serge E. Hallyn
2006-05-01 19:53   ` [PATCH 4/7] uts namespaces: implement utsname namespaces Serge E. Hallyn
2006-05-01 19:53     ` [PATCH 5/7] uts namespaces: sysctl hack Serge E. Hallyn
2006-05-01 19:53       ` [PATCH 6/7] uts namespaces: remove system_utsname Serge E. Hallyn
2006-05-01 19:53         ` [PATCH 7/7] uts namespaces: Implement CLONE_NEWUTS flag Serge E. Hallyn
2006-05-01 20:28           ` Dave Hansen
2006-05-01 21:11             ` Serge E. Hallyn
2006-05-01 21:58               ` Dave Hansen
2006-05-02 17:32                 ` Serge E. Hallyn
2006-05-02  8:55             ` Eric W. Biederman
2006-05-02  6:55           ` Andi Kleen
2006-05-02  8:03             ` Eric W. Biederman
2006-05-02  8:17               ` Andi Kleen
2006-05-02  8:48                 ` Eric W. Biederman
2006-05-02 17:20                 ` Serge E. Hallyn
2006-05-02 17:30                   ` Andi Kleen [this message]
2006-05-03 16:11                     ` Serge E. Hallyn
2006-05-03 16:19                       ` Serge E. Hallyn
2006-05-05  6:44                       ` Herbert Poetzl
2006-05-05 12:17                         ` Serge E. Hallyn
2006-05-05 11:02                       ` Andi Kleen
2006-05-05 11:43                         ` Serge E. Hallyn
2006-05-05 14:31                           ` Andi Kleen
2006-05-05 15:55                           ` Eric W. Biederman
2006-05-01 19:53   ` [PATCH 1/7] uts namespaces: introduce temporary helpers Serge E. Hallyn
  -- strict thread matches above, loose matches on Subject: below --
2006-05-01 19:53 [PATCH 0/7] uts namespaces: Introduction Serge E. Hallyn

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=200605021930.45068.ak@suse.de \
    --to=ak@suse.de \
    --cc=clg@fr.ibm.com \
    --cc=dev@sw.ru \
    --cc=ebiederm@xmission.com \
    --cc=frankeh@us.ibm.com \
    --cc=haveblue@us.ibm.com \
    --cc=herbert@13thfloor.at \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sam@vilain.net \
    --cc=serue@us.ibm.com \
    --cc=xemul@sw.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 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.