From: Trond Myklebust <trond.myklebust@fys.uio.no>
To: NIIBE Yutaka <gniibe@m17n.org>
Cc: Stephan von Krawczynski <skraw@ithnet.com>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: BUG REPORT: kernel nfs between 2.4.19-pre2 (server) and 2.2.21-pre3 (client)
Date: Wed, 20 Mar 2002 09:30:29 +0100 [thread overview]
Message-ID: <E16nbUL-0004Ga-00@charged.uio.no> (raw)
In-Reply-To: <shswuwkujx5.fsf@charged.uio.no> <E16nKrq-0007uP-00@charged.uio.no> <200203200042.g2K0gnL19526@mule.m17n.org>
On Wednesday 20. March 2002 01:42, NIIBE Yutaka wrote:
> IMO, it's no use to check the correctness for the inode when ->i_count ==
> 0. We can reuse the memory of the client side inode, that's true,
> but we don't need to check old data against new one at that time.
I don't understand what you mean by this. As I see it, close-to-open
consistency checking mandates that you do this. What if somebody changed the
data on the server while you had the file closed?
Furthermore, inode->i_count == 0 offers no guarantees that the client doesn't
for instance have dirty pages to write out.
Messing around with the value of i_mode in nfs_find_actor as you want to do
in your patch is going to introduce new dimensions to this problem. For
instance, magically changing a regular file into a symlink without first
flushing out dirty pages and clearing the page cache is certainly going to
produce som "interesting" results...
As I said yesterday: a test of the form
if ((inode->i_mode & S_IFMT) != (fattr->mode & S_IFMT))
return 0;
in nfs_find_actor might make sense since that forces the creation of a new
inode. However it doesn't help at all with the same race if inode->i_mode
hasn't changed. There is simply no way you can test for whether or not the
file is the same on the server.
Cheers,
Trond
next prev parent reply other threads:[~2002-03-20 8:31 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-09 12:19 BUG REPORT: kernel nfs between 2.4.19-pre2 (server) and 2.2.21-pre3 (client) Stephan von Krawczynski
2002-03-09 19:10 ` Alan Cox
2002-03-10 17:50 ` Stephan von Krawczynski
2002-03-10 22:39 ` Trond Myklebust
2002-03-11 0:18 ` Stephan von Krawczynski
2002-03-11 0:28 ` Trond Myklebust
2002-03-11 6:14 ` Oleg Drokin
2002-03-11 10:46 ` Stephan von Krawczynski
2002-03-11 10:52 ` Oleg Drokin
2002-03-11 11:24 ` Stephan von Krawczynski
2002-03-11 12:47 ` Stephan von Krawczynski
2002-03-11 12:59 ` Oleg Drokin
2002-03-15 11:02 ` Stephan von Krawczynski
2002-03-15 11:13 ` Oleg Drokin
2002-03-15 11:30 ` Stephan von Krawczynski
2002-03-15 11:36 ` Sean Neakums
2002-03-15 11:37 ` Oleg Drokin
2002-03-15 12:03 ` Stephan von Krawczynski
2002-03-15 12:05 ` Oleg Drokin
2002-03-21 14:45 ` Stephan von Krawczynski
2002-03-21 14:57 ` Stephan von Krawczynski
2002-03-21 15:01 ` Oleg Drokin
2002-03-21 15:05 ` Stephan von Krawczynski
2002-03-21 15:07 ` Oleg Drokin
2002-03-21 17:15 ` Stephan von Krawczynski
2002-03-22 5:48 ` Oleg Drokin
2002-03-22 0:19 ` Trond Myklebust
2002-03-22 11:00 ` Stephan von Krawczynski
2002-03-22 11:07 ` Trond Myklebust
2002-03-22 13:19 ` Stephan von Krawczynski
2002-03-15 14:07 ` Stephan von Krawczynski
2002-03-11 14:48 ` Stephan von Krawczynski
2002-03-11 13:51 ` Oleg Drokin
2002-03-11 14:03 ` Trond Myklebust
2002-03-11 15:57 ` Stephan von Krawczynski
2002-03-11 16:31 ` Hans Reiser
2002-03-15 10:32 ` Oleg Drokin
2002-03-11 13:59 ` Trond Myklebust
2002-03-11 11:00 ` Stephan von Krawczynski
2002-03-11 11:11 ` Oleg Drokin
2002-03-18 7:07 ` NIIBE Yutaka
2002-03-18 8:15 ` Trond Myklebust
2002-03-18 9:33 ` NIIBE Yutaka
2002-03-18 9:56 ` Trond Myklebust
2002-03-18 23:57 ` NIIBE Yutaka
2002-03-19 14:45 ` Trond Myklebust
2002-03-20 0:42 ` NIIBE Yutaka
2002-03-20 8:30 ` Trond Myklebust [this message]
2002-03-19 15:42 ` Ton Hospel
2002-03-19 18:31 ` BUG REPORT: kernel nfs between 2.4.19-pre2 (server) and Alan Cox
2002-03-19 22:10 ` BUG REPORT: kernel nfs between 2.4.19-pre2 (server) and 2.2.21-pre3 (client) Trond Myklebust
2002-03-22 10:33 ` David Woodhouse
2002-03-22 11:03 ` Trond Myklebust
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=E16nbUL-0004Ga-00@charged.uio.no \
--to=trond.myklebust@fys.uio.no \
--cc=gniibe@m17n.org \
--cc=linux-kernel@vger.kernel.org \
--cc=skraw@ithnet.com \
/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;
as well as URLs for NNTP newsgroup(s).