[illumos-Developer] webrev for 1107

Gordon Ross gordon.w.ross at gmail.com
Mon Jun 13 17:36:31 PDT 2011


On Mon, Jun 13, 2011 at 7:57 PM, Dan Kruchinin <dkruchinin at acm.org> wrote:
> Brief looking at current KLM design showed that it won't work.
> We have a chicken and egg problem (please, correct me if I'm wrong):

Right, because initialization currently happens when the loopback
transport gets added in the kernel LM code.

> Before start, KLM waits lockd to call nlmsvc with loopback (ticotsord
> device) netconfig. (for start
> it doesn't interested in file descriptor associated with another peer,
> it just needs to get valid netid and netconfig
> to make initial report to statd).
>
> if do_one() function ignores all COTS (because they are initialized
> when new client appears), it will ignore ticotsord.
> If it will ignore ticotsord, KLM will never start, because statd won't
> try to establish connection via loopback
> until KLM report that it ready to work.
>
> We can fix that problem by three ways:
[...]

We can also just use /dev/ticlts for communications between the
in-kernel lockd and the NFS statd, for now anyway.  Later, we may
want add more sub-functions to the nfssys system call to simplify
some of this stuff.  But let's do that later, so we don't have to carry
interface changes outside of the (new) lock manager code just yet.

Gordon



More information about the Developer mailing list