I haven't had much time to work on the NFS Lock Manager (NLM) lately, so I've pushed my work-in-progress (wip) for this to the nlm1 repository in hopes that others may be able to take it forward. See changeset 13171.

In a previous changeset (13169) I added the original FreeBSD files I used, so if you make a webrev relative to that base you'll see what I did to their code. Sorry, there are many differences between the BSD and SunOS kernels where in-kernel RPC services are concerned. The interface to the local locking code is also quite different. Oh well. it was still a help to have the FreeBSD code as a starting point.

Much of the remaining work is to fill in the body of several functions in klmmod.c and klmops.c that are just "stubs" at the moment. The main entry points are coded up: RPC service setup, and locking calls from the NFS client. There are many more to go. See the notes in usr/src/uts/common/klm/Notes.txt for more ideas.

Illumos is now on the way to becoming more of a fork of the OpenSolaris codebase, and that much more relevant in the community. We're working on building an official framework and organization around the project, and will reveal it soon.