From: Chuck Lever <chuck.lever@oracle.com>
To: trond.myklebust@netapp.com
Cc: linux-nfs@vger.kernel.org
Subject: [PATCH 0/2] Reduce GETATTRs during direct I/O
Date: Thu, 11 Feb 2010 14:08:58 -0500 [thread overview]
Message-ID: <20100211185757.2666.90001.stgit@localhost.localdomain> (raw)
Hi Trond-
I mentioned this one to you last week. I found that the NFS direct
I/O engine appears to be missing calls to nfs_fattr_init(). Please
take a look at these two patches and let me know if they look
reasonable for 2.6.34.
The problem also appears in the enterprise linux kernels. We're still
testing this on EL4 and EL5 in specific. We haven't found evidence so
far of incorrect behavior after applying the direct.c fix. A bugzilla
report is forthcoming.
I haven't convinced myself that the extra GETATTR when opening an
O_DIRECT file is ever necessary. But, I coded up a patch to your
specifications that changes O_DIRECT opens to avoid a GETATTR when
possible.
---
Chuck Lever (2):
NFS: Don't generate a GETATTR when opening an O_DIRECT file
NFS: Too many GETATTR and ACCESS calls after direct I/O
fs/nfs/dir.c | 20 ++++++++++++++++----
fs/nfs/direct.c | 3 +++
2 files changed, 19 insertions(+), 4 deletions(-)
--
Chuck Lever
next reply other threads:[~2010-02-11 19:10 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-11 19:08 Chuck Lever [this message]
[not found] ` <20100211185757.2666.90001.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2010-02-11 19:09 ` [PATCH 1/2] NFS: Too many GETATTR and ACCESS calls after direct I/O Chuck Lever
2010-02-11 19:09 ` [PATCH 2/2] NFS: Don't generate a GETATTR when opening an O_DIRECT file Chuck Lever
[not found] ` <20100211190918.2666.82008.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2010-02-11 19:13 ` Chuck Lever
2010-02-11 19:14 ` Trond Myklebust
2010-02-11 19:20 ` Chuck Lever
2010-02-11 19:34 ` Trond Myklebust
2010-02-11 19:41 ` Chuck Lever
2010-02-11 19:45 ` 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=20100211185757.2666.90001.stgit@localhost.localdomain \
--to=chuck.lever@oracle.com \
--cc=linux-nfs@vger.kernel.org \
--cc=trond.myklebust@netapp.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