From: "J. Bruce Fields" <bfields@fieldses.org>
To: Peter Staubach <staubach@redhat.com>
Cc: Neil Brown <neilb@suse.de>,
Andrew Morton <akpm@linux-foundation.org>,
NFS List <nfs@lists.sourceforge.net>
Subject: Re: [PATCH] 64 bit ino support for NFS server
Date: Mon, 6 Aug 2007 12:09:53 -0400 [thread overview]
Message-ID: <20070806160953.GA8734@fieldses.org> (raw)
In-Reply-To: <46B7410A.3050202@redhat.com>
On Mon, Aug 06, 2007 at 11:40:58AM -0400, Peter Staubach wrote:
> J. Bruce Fields wrote:
>> On Fri, Aug 03, 2007 at 03:29:10PM -0400, Peter Staubach wrote:
>>> @@ -203,31 +203,15 @@ encode_fattr3(struct svc_rqst *rqstp, __
>>> static __be32 *
>>> encode_saved_post_attr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh
>>> *fhp)
>>> {
>>> - struct inode *inode = fhp->fh_dentry->d_inode;
>>> + if (!fhp->fh_post_saved) {
>>> + *p++ = xdr_zero;
>>> + return p;
>>> + }
>>>
>>
>> The caller, encode_wcc_data(), already did this check.
>
> True. What a twisty maze of small passages, all alike.
>
> The current algorithms don't look quite right to me. I don't
> think that it is valid to return a post_op_attr, which is not
> atomic w.r.t. the operation, even when not returning a pre_op_attr.
> Perhaps a little more cleanup might be good. I will look into
> this.
I *think* the current code is correct, but I agree that it's worth
another check--thanks!
I've also never been really fond of the combined handling of fh_{un}lock
functions that combine the locking and attribute gathering. But maybe
it's just me--I haven't really thought about that code.
>> Dumb question: I assume it's always legal to call ->getattr while
>> holding the i_mutex?
>>
>
> Not so dumb, and I couldn't find an answer to that, either way.
> I couldn't find any reason why it would be illegal, but neither
> did I find explicit reasons for why it would be legal.
>
> Does anyone else know? This gets into the lack of complete
> definition for the virtual file system layer...
There's a useful file Documentation/filesystems/Locking. It has a table
that explains which operations take the i_mutex and which don't. I
assume that a "no" in the table means that function isn't usually called
with the i_mutex, not that it necessarily *must* not be. But I could be
wrong.
That table could use a caption....
--b.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2007-08-06 16:09 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-03 19:11 [PATCH] 64 bit ino support for NFS server Peter Staubach
2007-08-03 19:29 ` Peter Staubach
2007-08-04 22:32 ` J. Bruce Fields
2007-08-06 15:40 ` Peter Staubach
2007-08-06 16:09 ` J. Bruce Fields [this message]
2007-08-08 20:07 ` Peter Staubach
2007-08-08 20:35 ` J. Bruce Fields
2007-08-08 20:49 ` Peter Staubach
2007-08-08 21:01 ` J. Bruce Fields
2007-08-16 16:10 ` Peter Staubach
2007-08-17 16:51 ` J. Bruce Fields
2007-08-17 18:30 ` Peter Staubach
2007-08-17 18:36 ` J. Bruce Fields
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=20070806160953.GA8734@fieldses.org \
--to=bfields@fieldses.org \
--cc=akpm@linux-foundation.org \
--cc=neilb@suse.de \
--cc=nfs@lists.sourceforge.net \
--cc=staubach@redhat.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 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.