From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760918Ab2ILRiU (ORCPT ); Wed, 12 Sep 2012 13:38:20 -0400 Received: from mail.parknet.co.jp ([210.171.160.6]:38035 "EHLO mail.parknet.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1760594Ab2ILRiS (ORCPT ); Wed, 12 Sep 2012 13:38:18 -0400 From: OGAWA Hirofumi To: "J. Bruce Fields" Cc: Namjae Jeon , "Steven J. Magnani" , Al Viro , akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Namjae Jeon , Ravishankar N , Amit Sahrawat Subject: Re: [PATCH v2 1/5] fat: allocate persistent inode numbers References: <87k3w3ph8d.fsf@devron.myhome.or.jp> <87har6kmfx.fsf@devron.myhome.or.jp> <87oblc4u6f.fsf@devron.myhome.or.jp> <871ui84l4l.fsf@devron.myhome.or.jp> <20120912143227.GE3009@fieldses.org> <87vcfjfa14.fsf@devron.myhome.or.jp> <20120912171128.GG3009@fieldses.org> Date: Thu, 13 Sep 2012 02:38:11 +0900 In-Reply-To: <20120912171128.GG3009@fieldses.org> (J. Bruce Fields's message of "Wed, 12 Sep 2012 13:11:28 -0400") Message-ID: <87r4q7f8fw.fsf@devron.myhome.or.jp> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org "J. Bruce Fields" writes: >> On other view (as server side solution), we are thinking there is >> possible to make the stable filehandle on FAT if we disabled some >> operations (e.g. rename(), unlink()) which change inode location in FAT. >> >> Yes, it would be stable, but supporting limited operations. >> >> This is server side solution, and we comparing it with client solution. > > Is that useful to anyone? Good question. I'm not sure though, Namjae is asking. And I was asked about stable read-only export in past. >> >> LOOKUP return NFS FH->[inode number changed at NFS Server] -> >> >> But we still use old NFS FH returned from LOOKUP for any file >> >> operation(write,read,etc..) >> >> -> ESTALE will be returned. >> >> Yes. And I'm expecting as client side solution, >> >> -> ESTALE will be returned -> discard old FH -> restart from LOOKUP -> >> make cached inode -> use returned new FH. >> >> Yeah, I know this is unstable (there is no perfect solution for now), > > You may end up with a totally different file, of course: > > client: server: > > open "/foo/bar" > rename "/foo/baz"->"/foo/bar" > write to file > > And now we're writing to the file that was originally named /foo/baz > when we should have gotten ESTALE. I see. So, client can't solve the ESTALE if inode cache was evicted, right? (without application changes) -- OGAWA Hirofumi