Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S270680AbTHFG1k (ORCPT ); Wed, 6 Aug 2003 02:27:40 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S274878AbTHFG1j (ORCPT ); Wed, 6 Aug 2003 02:27:39 -0400 Received: from soft.uni-linz.ac.at ([140.78.95.99]:12465 "EHLO zeus.soft.uni-linz.ac.at") by vger.kernel.org with ESMTP id S270680AbTHFG1i (ORCPT ); Wed, 6 Aug 2003 02:27:38 -0400 Message-ID: <3F309FD8.8090105@gibraltar.at> Date: Wed, 06 Aug 2003 08:27:36 +0200 From: Rene Mayrhofer User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021213 Debian/1.2.1-2.bunk X-Accept-Language: de-at, de-de, en-gb, en-us MIME-Version: 1.0 To: Linux Kernel Mailing List CC: Jason Baron Subject: Re: pivot_root solved by patch to 2.4.22-pre7 References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1531 Lines: 42 Hi all, The problem with pivot_root that appeared in 2.4.21-ac4 and the 2.4.22-pre kernels is now solved (at least for my case) by applying the trvial patch sent by Jason Baron. Jason Baron wrote: > right. so the semantics of how file tables are shared has changed a bit. I > would think that for at least 'init', it'd be nice to preserve the > original behavior, for situations such as you described. Something like > the following would probably work, although i havent' tried the test > script. > > --- linux/kernel/fork.c.orig 2003-07-23 21:34:59.000000000 -0400 > +++ linux/kernel/fork.c 2003-07-23 21:35:45.000000000 -0400 > @@ -558,7 +558,7 @@ int unshare_files(void) > > /* This can race but the race causes us to copy when we don't > need to and drop the copy */ > - if(atomic_read(&files->count) == 1) > + if(atomic_read(&files->count) == 1 || (current->pid == 1)) > { > atomic_inc(&files->count); > return 0; > I tried that on my system and it works as expected. The kernel processes close their fds and the old root fs can thus be unmounted after pivot_root. Thanks for the hint ! So the problem is solved for me and it would be wonderful to get it into 2.4.22. best regards, Rene - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/