From: Wendy Cheng <wcheng@redhat.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH 0/4 Revised] NLM - lock failover
Date: Thu, 19 Apr 2007 10:53:30 -0400 [thread overview]
Message-ID: <4627826A.7040206@redhat.com> (raw)
In-Reply-To: <17959.5245.635902.823441@notabene.brown>
Neil Brown wrote:
> On Tuesday April 17, wcheng at redhat.com wrote:
>
>> In short, my vote is taking this (NLM) patch set and let people try it
>> out while we switch our gear to look into other NFS V3 failover issues
>> (nfsd in particular). Neil ?
>>
>
> I agree with Christoph in that we should do it properly.
> That doesn't mean that we need a complete solution. But we do want to
> make sure to avoid any design decisions that we might not want to be
> stuck with. Sometimes that's unavoidable, but let's try a little
> harder for the moment.
>
As any code review, set personal feeling aside, at the end of the day,
you would start to appreciate some of the look-like-harsh comments. This
instance is definitely one of that moments. I agree we should try harder.
NFS failover has been a difficult subject. There is a three-years-old
Red Hat bugzilla asking for this feature, plus few others marked as
duplicate. By reading through the comments last night, I do feel
strongly that we should put restrictions on the implementation to avoid
dragging users into another three more years.
> One thing that has been bothering me is that sometimes the
> "filesystem" (in the guise of an fsid) is used to talk to the kernel
> about failover issues (when flushing locks or restarting the grace
> period) and sometimes the local network address is used (when talking
> with statd).
>
> I would rather use a single identifier. In my previous email I was
> leaning towards using the filesystem as the single identifier. Today
> I'm leaning the other way - to using the local network address.
>
> It works like this:
>
> We have a module parameter for lockd something like
> "virtual_server".
> If that is set to 0, none of the following changes are effective.
> If it is set to 1:
>
> The destination address for any lockd request becomes part of the
> key to find the nsm_handle.
> The my_name field in SM_MON requests and SM_UNMON requests is set
> to a textual representation of that destination address.
> The reply to SM_MON (currently completely ignored by all versions
> of Linux) has an extra value which indicates how many more seconds
> of grace period there is to go. This can be stuffed into res_stat
> maybe.
> Places where we currently check 'nlmsvc_grace_period', get moved to
> *after* the nlmsvc_retrieve_args call, and the grace_period value
> is extracted from host->nsm.
>
> This is the full extent of the kernel changes.
>
> To remove old locks, we arrange for the callbacks registered with
> statd for the relevant clients to be called.
> To set the grace period, we make sure statd knows about it and it
> will return the relevant information to lockd.
> To notify clients of the need to reclaim locks, we simple use the
> information stored by statd, which contains the local network
> address.
>
> The only aspect of this that gives me any cause for concern is
> overloading the return value for SM_MON. Possibly it might be cleaner
> to define an SM_MON2 with different args or whatever.
> As this interface is entirely local to the one machine, and as it can
> quite easily be kept back-compatible, I think the concept is fine.
>
> Statd would need to pass the my_name field to the ha callout rather
> than replacing it with "127.0.0.1", but other than that I don't think
> any changes are needed to statd (though I haven't thought through that
> fully yet).
>
> Comments?
>
>
Need sometime to look into the ramifications ... comment will follow soon.
-- Wendy
WARNING: multiple messages have this Message-ID (diff)
From: Wendy Cheng <wcheng@redhat.com>
To: Neil Brown <neilb@suse.de>
Cc: cluster-devel@redhat.com, nfs@lists.sourceforge.net
Subject: Re: [Cluster-devel] [PATCH 0/4 Revised] NLM - lock failover
Date: Thu, 19 Apr 2007 10:53:30 -0400 [thread overview]
Message-ID: <4627826A.7040206@redhat.com> (raw)
In-Reply-To: <17959.5245.635902.823441@notabene.brown>
Neil Brown wrote:
> On Tuesday April 17, wcheng@redhat.com wrote:
>
>> In short, my vote is taking this (NLM) patch set and let people try it
>> out while we switch our gear to look into other NFS V3 failover issues
>> (nfsd in particular). Neil ?
>>
>
> I agree with Christoph in that we should do it properly.
> That doesn't mean that we need a complete solution. But we do want to
> make sure to avoid any design decisions that we might not want to be
> stuck with. Sometimes that's unavoidable, but let's try a little
> harder for the moment.
>
As any code review, set personal feeling aside, at the end of the day,
you would start to appreciate some of the look-like-harsh comments. This
instance is definitely one of that moments. I agree we should try harder.
NFS failover has been a difficult subject. There is a three-years-old
Red Hat bugzilla asking for this feature, plus few others marked as
duplicate. By reading through the comments last night, I do feel
strongly that we should put restrictions on the implementation to avoid
dragging users into another three more years.
> One thing that has been bothering me is that sometimes the
> "filesystem" (in the guise of an fsid) is used to talk to the kernel
> about failover issues (when flushing locks or restarting the grace
> period) and sometimes the local network address is used (when talking
> with statd).
>
> I would rather use a single identifier. In my previous email I was
> leaning towards using the filesystem as the single identifier. Today
> I'm leaning the other way - to using the local network address.
>
> It works like this:
>
> We have a module parameter for lockd something like
> "virtual_server".
> If that is set to 0, none of the following changes are effective.
> If it is set to 1:
>
> The destination address for any lockd request becomes part of the
> key to find the nsm_handle.
> The my_name field in SM_MON requests and SM_UNMON requests is set
> to a textual representation of that destination address.
> The reply to SM_MON (currently completely ignored by all versions
> of Linux) has an extra value which indicates how many more seconds
> of grace period there is to go. This can be stuffed into res_stat
> maybe.
> Places where we currently check 'nlmsvc_grace_period', get moved to
> *after* the nlmsvc_retrieve_args call, and the grace_period value
> is extracted from host->nsm.
>
> This is the full extent of the kernel changes.
>
> To remove old locks, we arrange for the callbacks registered with
> statd for the relevant clients to be called.
> To set the grace period, we make sure statd knows about it and it
> will return the relevant information to lockd.
> To notify clients of the need to reclaim locks, we simple use the
> information stored by statd, which contains the local network
> address.
>
> The only aspect of this that gives me any cause for concern is
> overloading the return value for SM_MON. Possibly it might be cleaner
> to define an SM_MON2 with different args or whatever.
> As this interface is entirely local to the one machine, and as it can
> quite easily be kept back-compatible, I think the concept is fine.
>
> Statd would need to pass the my_name field to the ha callout rather
> than replacing it with "127.0.0.1", but other than that I don't think
> any changes are needed to statd (though I haven't thought through that
> fully yet).
>
> Comments?
>
>
Need sometime to look into the ramifications ... comment will follow soon.
-- Wendy
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2007-04-19 14:53 UTC|newest]
Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-05 21:50 [Cluster-devel] [PATCH 0/4 Revised] NLM - lock failover Wendy Cheng
2007-04-05 21:50 ` Wendy Cheng
2007-04-11 17:01 ` [Cluster-devel] Re: [NFS] " J. Bruce Fields
2007-04-11 17:01 ` J. Bruce Fields
2007-04-17 19:30 ` [Cluster-devel] " Wendy Cheng
2007-04-17 19:30 ` Wendy Cheng
2007-04-18 18:56 ` [Cluster-devel] " Wendy Cheng
2007-04-18 18:56 ` Wendy Cheng
2007-04-18 19:46 ` [Cluster-devel] " Wendy Cheng
2007-04-18 19:46 ` Wendy Cheng
2007-04-19 14:41 ` [Cluster-devel] Re: [NFS] " Christoph Hellwig
2007-04-19 14:41 ` Christoph Hellwig
2007-04-19 15:08 ` [Cluster-devel] Re: [NFS] " Wendy Cheng
2007-04-19 15:08 ` Wendy Cheng
[not found] ` <message from Wendy Cheng on Tuesday April 17>
2007-04-19 7:04 ` [Cluster-devel] " Neil Brown
2007-04-19 7:04 ` Neil Brown
2007-04-19 14:53 ` Wendy Cheng [this message]
2007-04-19 14:53 ` Wendy Cheng
2007-04-24 3:30 ` Wendy Cheng
2007-04-24 3:30 ` Wendy Cheng
[not found] ` <message from Wendy Cheng on Monday April 23>
2007-04-24 5:52 ` [NFS] " Neil Brown
2007-04-24 5:52 ` Neil Brown
2007-04-26 4:35 ` [NFS] " Wendy Cheng
2007-04-26 4:35 ` Wendy Cheng
[not found] ` <message from Wendy Cheng on Thursday April 26>
2007-04-26 5:43 ` [NFS] " Neil Brown
2007-04-26 5:43 ` Neil Brown
2007-04-27 2:24 ` [NFS] " Wendy Cheng
2007-04-27 2:24 ` Wendy Cheng
2007-04-27 6:00 ` [NFS] " Neil Brown
2007-04-27 6:00 ` Neil Brown
2007-04-27 11:15 ` [NFS] " Jeff Layton
2007-04-27 11:15 ` Jeff Layton
[not found] ` <message from Jeff Layton on Friday April 27>
2007-04-27 12:40 ` [NFS] " Neil Brown
2007-04-27 12:40 ` Neil Brown
2007-04-27 13:42 ` Jeff Layton
2007-04-27 18:57 ` [NFS] " Jeff Layton
2007-04-27 14:17 ` Christoph Hellwig
2007-04-27 14:17 ` Christoph Hellwig
2007-04-27 15:42 ` J. Bruce Fields
2007-04-27 15:43 ` [NFS] " J. Bruce Fields
2007-04-27 15:36 ` Wendy Cheng
2007-04-27 15:36 ` Wendy Cheng
2007-04-27 16:31 ` J. Bruce Fields
2007-04-27 16:31 ` [NFS] " J. Bruce Fields
[not found] ` <message from J. Bruce Fields on Friday April 27>
2007-04-27 22:22 ` Neil Brown
2007-04-27 22:22 ` Neil Brown
2007-04-29 20:13 ` J. Bruce Fields
2007-04-29 20:14 ` [NFS] " J. Bruce Fields
[not found] ` <message from J. Bruce Fields on Sunday April 29>
2007-04-29 23:10 ` Neil Brown
2007-04-29 23:10 ` Neil Brown
2007-04-30 5:19 ` [NFS] " Wendy Cheng
2007-04-30 5:19 ` Wendy Cheng
2007-05-04 18:42 ` [NFS] " J. Bruce Fields
2007-05-04 18:42 ` J. Bruce Fields
2007-05-04 21:35 ` [NFS] " Wendy Cheng
2007-05-04 21:35 ` Wendy Cheng
2007-04-27 20:34 ` Frank van Maarseveen
2007-04-27 20:34 ` [NFS] " Frank van Maarseveen
2007-04-28 3:55 ` Wendy Cheng
2007-04-28 3:55 ` Wendy Cheng
[not found] ` <message from Wendy Cheng on Friday April 27>
2007-04-28 4:51 ` [NFS] " Neil Brown
2007-04-28 4:51 ` Neil Brown
2007-04-28 5:26 ` Marc Eshel
2007-04-28 5:27 ` [NFS] " Marc Eshel
2007-04-28 12:33 ` Frank van Maarseveen
2007-04-28 12:33 ` [NFS] " Frank van Maarseveen
2007-04-27 15:12 ` Jeff Layton
2007-04-27 15:12 ` [NFS] " Jeff Layton
2007-04-25 14:18 ` [Cluster-devel] Re: [NFS] " J. Bruce Fields
2007-04-25 14:18 ` J. Bruce Fields
2007-04-25 14:10 ` [Cluster-devel] Re: [NFS] " Wendy Cheng
2007-04-25 14:10 ` Wendy Cheng
2007-04-25 15:21 ` [Cluster-devel] Re: [NFS] " Marc Eshel
2007-04-25 15:21 ` Marc Eshel
2007-04-25 15:19 ` [Cluster-devel] Re: [NFS] " Wendy Cheng
2007-04-25 15:19 ` Wendy Cheng
2007-04-25 15:39 ` [Cluster-devel] Re: [NFS] " Wendy Cheng
2007-04-25 15:39 ` [Cluster-devel] " Wendy Cheng
2007-04-25 15:59 ` [Cluster-devel] Re: [NFS] " J. Bruce Fields
2007-04-25 15:59 ` J. Bruce Fields
2007-04-25 15:52 ` [Cluster-devel] Re: [NFS] " Wendy Cheng
2007-04-25 15:52 ` Wendy Cheng
2011-11-30 10:13 ` Pavel
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=4627826A.7040206@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 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.