On Thu, Mar 31, 2005 at 04:27:07PM +0800, David Teigland wrote: > Sure, the mechanism used to export the locking API to user space is pretty > inconsequential. We're doing reads/writes on a misc device at the moment > (used through libdlm of course.) Going through an fs might be better but > I'm not sure why. A long time ago, we did consider a filesystem interface to the DLM. We rejected it for a couple of reasons: 1) the mapping of locks to files is not a very clean one. Trying to squeeze things like LVBs and ranges into the API soon gets very messy. Returning status from asynchronous operations can make the coding rather complicated for applications with multiple locks (you would need a file descriptor open for each lock!). Also the hierarchy functions differently: a lock that has children is still a lock, not just a directory. 2) At the time it was still very complicated to add new filesystems to the Linux kernel. This has now changed of course. I'll have a look at the OCFS2 filesystem and see if we can learn anything from it though. -- patrick