From: Wendy Cheng <wcheng@redhat.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] Re: [NFS] [PATCH 0/3] NLM lock failover
Date: Mon, 07 Aug 2006 18:38:00 -0400 [thread overview]
Message-ID: <44D7C0C8.3050403@redhat.com> (raw)
In-Reply-To: <17617.30732.643539.353696@cse.unsw.edu.au>
Neil Brown wrote
>
>This patch makes an assumption that any given filehandle will only arrive at
>one particular interface - never more. This is implicit in the fact
>that f_iaddr is stored in 'struct nlm_file' which is indexed by
>filehandle.
>
>In the case where you are intending to support active-active failover
>this is should be the case, but obviously configuration errors are
>possible.
>
>I think what I would like is that if requests arrive at two (or more)
>different interfaces for the one file, then f_iaddr is cleared and some
>flag is set.
>When an IP is written to nlm_unlock, if the flag is set, then a
>warning message is printer
> Note: some files access via multiple interfaces will not be
> unlocked.
>
>
Have given this issue a long thought during the weekend. The suggested
changes will work but so is "fsid" approach. I prefer "fsid" because it
is simpler to implement and very effective. The problem with this
approach is that it is a little bit awkward to explain - I don't believe
it is well-understand (or even aware of ) by most of the system
admin(s). We may need a good write-up for the procedures. It, however,
effectively handles the issues associated with an export entry getting
accessed by multiple virtual ip interfaces.
The test runs (with fsid) today have been encouraging. Will push the
revised patches for review as soon as they pass some sanity checks and
testings. However, the following is the main changes made by this new
implementation:
First, it is required to export the filesystem using "fsid"; e.g.
"export *:/mnt/tank1 (fsid=9468,rw) ".
Patch 1: Drop the locks based on fsid; e.g. "echo 9468 >
/proc/fs/nfsd/nlm_unlock"
Patch 2: Set individual grace period based on fsid "echo 9468 >
/proc/fs/nfsd/nlm_set_igrace"
Patch 3: Utility functions to allow cluster suite (or system admin) to
implement its own client reclaim notifications.
Unfortunately, it is too cumbersome to switch Patch 3 using fsid. So the
old trick stays (we still use server ip to facilitate the client reclaim
notification process).
In the mean time, the following is how I yank the fsid out of file
handle. Send it here for preview purpose. If anyone spots anything
wrong, please do let me know. This will be the "guts" of this whole thing:
-- Wendy
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: fsid_from_fh.txt
URL: <http://listman.redhat.com/archives/cluster-devel/attachments/20060807/9e34b65b/attachment.txt>
next prev parent reply other threads:[~2006-08-07 22:38 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-29 17:47 [Cluster-devel] [RFC PATCH 0/3] NLM lock failover Wendy Cheng
2006-08-01 1:55 ` [Cluster-devel] [PATCH " Wendy Cheng
[not found] ` <message from Wendy Cheng on Monday July 31>
2006-08-03 4:14 ` [Cluster-devel] Re: [NFS] " Neil Brown
2006-08-03 21:34 ` Wendy Cheng
2006-08-07 22:38 ` Wendy Cheng [this message]
2006-08-04 9:27 ` Greg Banks
2006-08-04 13:27 ` Wendy Cheng
2006-08-04 14:56 ` Wendy Cheng
2006-08-04 15:51 ` Trond Myklebust
2006-08-05 5:44 ` Wendy Cheng
2006-08-07 4:05 ` Greg Banks
2006-08-07 20:14 ` James Yarbrough
2006-08-07 21:03 ` Wendy Cheng
2006-08-07 4:05 ` Greg Banks
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=44D7C0C8.3050403@redhat.com \
--to=wcheng@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 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).