2007-04-05 22:12:06

by Wendy Cheng

[permalink] [raw]
Subject: [PATCH 1/4 Revised] NLM - drop per fsid locks

_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs


Attachments:
001_nlm_drop_l.patch (8.75 kB)
(No filename) (345.00 B)
(No filename) (140.00 B)
Download all attachments

2007-04-09 18:49:04

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH 1/4 Revised] NLM - drop per fsid locks

On Thu, Apr 05, 2007 at 05:51:28PM -0400, Wendy Cheng wrote:
> By writing exported filesytem id into /proc/fs/nfsd/nlm_unlock, this
> patch walks thru lockd's global nlm_files list to release all the locks
> associated with the particular id. It is used to enable NFS lock
> failover with active-active clustered servers.
>
> Relevant steps:
> 1) Exports filesystem with "fsid" option as:
> /etc/exports entry> /mnt/shared/exports *(fsid=1234,sync,rw)
> 2) Drops locks based on fsid by:
> shell> echo 1234 > /proc/fs/nfsd/nlm_unlock

This is a very awkward API. Dropping locks should support uuid or
dev_t based exports aswell. Also it would be nice if you we had
a more general push api for changes to filesystem state, that works
on a similar basis as getting information from /etc/exports.


And please inline your patches into the mail I send, attaching them
makes it really hard to quote it in mail replies or even to simply read
it.



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs

2007-04-09 22:55:09

by Wendy Cheng

[permalink] [raw]
Subject: Re: [PATCH 1/4 Revised] NLM - drop per fsid locks

Christoph Hellwig wrote:
> On Thu, Apr 05, 2007 at 05:51:28PM -0400, Wendy Cheng wrote:
>
>> By writing exported filesytem id into /proc/fs/nfsd/nlm_unlock, this
>> patch walks thru lockd's global nlm_files list to release all the locks
>> associated with the particular id. It is used to enable NFS lock
>> failover with active-active clustered servers.
>>
>> Relevant steps:
>> 1) Exports filesystem with "fsid" option as:
>> /etc/exports entry> /mnt/shared/exports *(fsid=1234,sync,rw)
>> 2) Drops locks based on fsid by:
>> shell> echo 1234 > /proc/fs/nfsd/nlm_unlock
>>
>
> This is a very awkward API. Dropping locks should support uuid or
> dev_t based exports aswell. Also it would be nice if you we had
> a more general push api for changes to filesystem state, that works
> on a similar basis as getting information from /etc/exports.
>
These can be added as future enhancements. But be aware that:
1. The "dev_t" value may be an obvious thing for a kernel developer but
not necessarily for admin(s) (human operator) or cluster script (that
has to use extra steps to obtain it).
2. Device major and minor numbers can change between different servers
(shared storage case) or between reboots. The "fsid" approach should be
encouraged.
3. UUID is tied to disk partitions - an all-or-nothing approach,
comparing to fsid that would allow cluster filesystem doing its load
balancing (by
exporting different directories from different nodes)

On the other hand, lock dropping based on "uuid" or "dev_t" may be
useful in a single server case though.
>
> And please inline your patches into the mail I send, attaching them
> makes it really hard to quote it in mail replies or even to simply read
> it.
>
I normally don't do much development works for community versions of
linux kernel. Some of the "convention" is not clear to me. Will do it
next time. But these patches tend to be quite large (in terms of line
count).

-- Wendy

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
NFS maillist - [email protected]
https://lists.sourceforge.net/lists/listinfo/nfs