From mboxrd@z Thu Jan 1 00:00:00 1970 From: Al Viro Subject: Re: [RFC/PATCH 2/5] revoke: core code Date: Wed, 11 Jul 2007 11:18:03 +0100 Message-ID: <20070711101803.GX21668@ftp.linux.org.uk> References: <20070711093732.GU21668@ftp.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org To: Pekka J Enberg Return-path: Received: from zeniv.linux.org.uk ([195.92.253.2]:36632 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757675AbXGKKSE (ORCPT ); Wed, 11 Jul 2007 06:18:04 -0400 Content-Disposition: inline In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Wed, Jul 11, 2007 at 01:01:07PM +0300, Pekka J Enberg wrote: > On Wed, 11 Jul 2007, Al Viro wrote: > > BTW, read() or write() in progress might get rather unhappy if your > > live replacement of ->f_mapping races with them... > > For writes, we (1) never start any new operations after we've cleaned up > the file descriptor tables so (2) after we're done with do_fsync() we > never touch ->f_mapping again. Er, no. do_fsync() won't hit the sys_write() that is yet to enter ->write(). And you can't get rid of new callers _anyway_ (see previous mail).