From: Steve Dickson <SteveD@redhat.com>
To: Olaf Kirch <okir@suse.de>
Cc: nfs@lists.sourceforge.net
Subject: Re: [PATCH] Reinstantiating stale inodes
Date: Fri, 23 Apr 2004 11:50:41 -0400 [thread overview]
Message-ID: <40893B51.2080302@RedHat.com> (raw)
In-Reply-To: <20040423143308.GW3491@suse.de>
Hi Olaf,
Olaf Kirch wrote:
>On Fri, Apr 23, 2004 at 10:15:35AM -0400, Steve Dickson wrote:
>
>
>>Here is a 2.4 patch that will reinstantiate an inode
>>when a ESTALE error is returned on a getattr. When
>>the error occurs, a lookup is immediately issued
>>to get a new fh.
>>
>>
>
>Brrr. Are you sure this is such a good idea? It will have all sorts of
>bad side effects.
>
This is why I'm asking.... In the beginning I also thought this ideas was
a bit brain dead ... but after a bunch of trials and tribulations and not
being able to do it any other way that didn't effect normal
traffic... it kinda grew on me... :)
>For instance, you may be writing a file named "foo".
>Someone else replaces foo with their copy (mv foo-new foo) and your file
>handle becomes stale.
>
>
True... but the write or commit will still fail with ESTALE. This
patch only effects getattrs (or stat()s). I guess my subject line
was a bit miss leading...
>If you issue a lookup immediately, you will continue writing, but
>now your writes go to the new file and produce garbage.
>
>
Here are the tests I ran:
client: writes 100m file called foo
server: rm foo
client: the write or commit failed with ESTALE
client: writes 100m file called foo
server: renames foo to foo.old and immediately creates foo
client: failed with ESTALE
client: writes 100m file called foo
Same client: rm foo
client: finishes writing then the file is removed
client: writes 100m file called foo
Same client: renames foo to foo.old and immediately creates foo
client: both write to foo and foo.old complete and sum -r shows
they are identical
Again only getattrs will be followed up with lookups..
>At a minimum, the lookup should occur at file open, and only if
>there are no other users of the inode.
>
>
Unfortunately, in this particular case, there were no opens...
SteveD.
-------------------------------------------------------
This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek
For a limited time only, get FREE Ground shipping on all orders of $35
or more. Hurry up and shop folks, this offer expires April 30th!
http://www.thinkgeek.com/freeshipping/?cpg=12297
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2004-04-23 15:50 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-04-23 14:15 [PATCH] Reinstantiating stale inodes Steve Dickson
2004-04-23 14:33 ` Olaf Kirch
2004-04-23 15:50 ` Steve Dickson [this message]
2004-04-23 17:55 ` Olaf Kirch
2004-04-23 18:43 ` Steve Dickson
2004-04-23 18:50 ` Olaf Kirch
2004-04-23 20:07 ` Steve Dickson
2004-04-23 14:36 ` Trond Myklebust
2004-04-23 16:01 ` Steve Dickson
2004-04-23 16:21 ` Trond Myklebust
2004-04-23 17:21 ` Steve Dickson
2004-04-23 17:49 ` Trond Myklebust
2004-04-23 19:14 ` Steve Dickson
[not found] ` <40892DC0.1010001@redhat.com>
2004-04-23 16:04 ` Steve Dickson
2004-05-01 16:13 ` Steve Dickson
2004-05-01 19:25 ` Trond Myklebust
2004-05-01 23:57 ` Steve Dickson
2004-05-02 0:22 ` Trond Myklebust
2004-05-02 3:19 ` Steve Dickson
2004-05-02 3:28 ` Trond Myklebust
2004-05-03 19:50 ` Steve Dickson
2004-05-03 20:15 ` Trond Myklebust
2004-05-03 20:33 ` Steve Dickson
2004-05-03 21:27 ` Trond Myklebust
2004-05-04 19:05 ` Steve Dickson
2004-05-06 17:39 ` Steve Dickson
-- strict thread matches above, loose matches on Subject: below --
2004-04-23 14:48 Lever, Charles
2004-04-23 15:00 ` Trond Myklebust
2004-04-23 16:16 ` Steve Dickson
2004-04-23 15:08 ` Olaf Kirch
2004-04-23 15:17 Lever, Charles
2004-04-23 16:16 Lever, Charles
2004-04-23 16:27 ` Steve Dickson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=40893B51.2080302@RedHat.com \
--to=steved@redhat.com \
--cc=nfs@lists.sourceforge.net \
--cc=okir@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox