From mboxrd@z Thu Jan 1 00:00:00 1970 From: Al Viro Subject: Re: [PATCH 1/2] New system call, unshare Date: Tue, 23 Aug 2005 07:07:40 +0100 Message-ID: <20050823060740.GD9322@parcelfarce.linux.theplanet.co.uk> References: <1123512366.31229.8.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Janak Desai , sds@tycho.nsa.gov, linuxram@us.ibm.com, ericvh@gmail.com, dwalsh@redhat.com, jmorris@redhat.com, akpm@osdl.org, torvalds@osdl.org, gh@us.ibm.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Return-path: To: Alan Cox Content-Disposition: inline In-Reply-To: <1123512366.31229.8.camel@localhost.localdomain> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Mon, Aug 08, 2005 at 03:46:06PM +0100, Alan Cox wrote: > On Llu, 2005-08-08 at 09:33 -0400, Janak Desai wrote: > > > > [PATCH 1/2] unshare system call: System Call handler function sys_unshare > > > Given the complexity of the kernel code involved and the obscurity of > the functionality why not just do another clone() in userspace to > unshare the things you want to unshare and then _exit the parent ? Because you want to keep children? Because you don't want to deal with the implications for sessions/groups/etc.? FWIW, syscall makes sense. It is a valid primitive and the only reason to keep it out of clone() (i.e. not making it just another flag to clone()) is that clone() is already cluttered _and_ uses bad calling conventions for that stuff ("I want to retain " rather than "I want private ").