From: Benny Halevy <bhalevy@tonian.com>
To: chenditang <chendt.fnst@cn.fujitsu.com>
Cc: linux-nfs@vger.kernel.org, LINE <fnst-xmlinux@cn.fujitsu.com>,
Trond Myklebust <trond.myklebust@netapp.com>
Subject: Re: pnfs: WRITE operation will not send LAYOUTCOMMI OP to MDS if use filelayout
Date: Mon, 18 Mar 2013 11:01:42 +0200 [thread overview]
Message-ID: <5146D7F6.3010607@tonian.com> (raw)
In-Reply-To: <5146BE38.2060004@cn.fujitsu.com>
On 2013-03-18 09:11, chenditang wrote:
> In the recent pnfs kernel versions, WRITE operation will not send
> LAYOUTCOMMI OP to MDS if use filelayout.
I presume that the file server sets NFL4_UFLG_COMMIT_THRU_MDS
and that the DS is returning how=FILE_SYNC and that the client
is implementing the behavior described in Errata ID: 2751
http://www.rfc-editor.org/errata_search.php?rfc=5661
Do you have a tcp dump of client, MDS, and DS traffic?
>
> In nfs_write_rpcsetup function, the value of the variable 'stable' will
> always be NFS_FILE_SYNC(ncommit is 0). so NFS_INO_LAYOUTCOMMIT
> flag will not be set.
What's the value of the "how" arg to nfs_write_rpcsetup that you see?
At any rate, if you look at filelayout_set_layoutcommit, it will not
call pnfs_set_layoutcommit in the following cases:
if (FILELAYOUT_LSEG(hdr->lseg)->commit_through_mds ||
wdata->res.verf->committed == NFS_FILE_SYNC)
return;
Benny
>
> The value of the variable ncommit' will be ++ in the later process
> (nfs_writeback_release_common function).
>
>
> Thanks!
>
next prev parent reply other threads:[~2013-03-18 9:01 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-18 7:11 pnfs: WRITE operation will not send LAYOUTCOMMI OP to MDS if use filelayout chenditang
2013-03-18 9:01 ` Benny Halevy [this message]
2013-03-18 10:47 ` chenditang
2013-03-18 12:57 ` Myklebust, Trond
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=5146D7F6.3010607@tonian.com \
--to=bhalevy@tonian.com \
--cc=chendt.fnst@cn.fujitsu.com \
--cc=fnst-xmlinux@cn.fujitsu.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 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.