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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.