From mboxrd@z Thu Jan 1 00:00:00 1970 From: Trond Myklebust Subject: Re: [PATCH 01/24] Unionfs: Documentation Date: Tue, 09 Jan 2007 11:39:38 -0500 Message-ID: <1168360778.6054.26.camel@lade.trondhjem.org> References: <20070108111852.ee156a90.akpm@osdl.org> <200701082051.l08KpV8b011212@agora.fsl.cs.sunysb.edu> <20070109122644.GB1260@atrey.karlin.mff.cuni.cz> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: Erez Zadok , Andrew Morton , Josef 'Jeff' Sipek , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, hch@infradead.org, viro@ftp.linux.org.uk, torvalds@osdl.org, mhalcrow@us.ibm.com, David Quigley Return-path: Received: from pat.uio.no ([129.240.10.15]:40760 "EHLO pat.uio.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932226AbXAIQkH (ORCPT ); Tue, 9 Jan 2007 11:40:07 -0500 To: Jan Kara In-Reply-To: <20070109122644.GB1260@atrey.karlin.mff.cuni.cz> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Tue, 2007-01-09 at 13:26 +0100, Jan Kara wrote: > Yes, making fs readonly at VFS level would not work for already opened > files. But you if you create new union, you could lock down the > filesystems you are unioning (via s_umount semaphore), go through lists > of all open fd's on those filesystems and check whether they are open > for write or not. If some fd is open for writing, you simply fail to > create the union (and it's upto user to solve the problem). Otherwise > you mark filesystems as RO and safely proceed with creating the union. > I guess you must have come up with this solution. So what is the problem > with it? Aside from the fact that this is racy (s_umount doesn't protect you against a process opening a new file while you are busy running through the open fds to see if you can reset the MS_RDONLY flag) all you will have achieved is ensure that your client won't write to the file. You will still be able to Oops. Trond