DragonFly kernel List (threaded) for 2008-01
DragonFly BSD
DragonFly kernel List (threaded) for 2008-01
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

nfs4v (was: Re: should we use atomic instructions to manipulate vmstats.v_wire_count?)

From: Rick Macklem <rick@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 14 Jan 2008 12:20:56 -0500 (EST)

> How complicated would a port to DragonFly be?  Would you be interested
> to spearhead an effort to do so? :)

I don't think the port would be that much work. (but if someone can do it
in a day, they're a lot faster than I am:-)
The client and server are
now structured so the the VFS handling is separated out into functions
that are a part of the port. (The porting exercise is mostly cribbing
the VFS handling parts from the extant NFS code and putting the right
bits in these functions.) There is currently a full port for OpenBSD4.2,
plus a server port for FreeBSD-CURRENT and a client (and most of a server)
port for Darwin. (I figured that, since Darwin/Mac OS X had changed the
VFS in major ways, that porting to it would cover most of the issues.)

At one point Dave Rhodus did some work on a DragonflyBSD port of the
server, but that was old code from before the VFS functionality was
separated out.

As for spearheading an effort, I guess that depends upon your definition
of "spearhead":-) I'm currently just starting on a client port for
FreeBSD-CURRENT, which will keep me busy until at least spring. As such,
I'd be happy to help with questions etc, but don't really have the time
to do the main part of the coding. (If/when somebody gets to the testing
stage, I could help with that, too.)

If anyone is interested, they could grab the OpenBSD4.2 stuff off the
anonymous ftp site (ftp.cis.uoguelph.ca/pub/nfsv4/OpenBSD4.2/sys.tar.gz) and
start looking at all the files under sys/newnfs with "port" in the
names. (The nfsclient subdirectory is the extant NFS client code, copied
and then hacked to use the RPC calls in the nfscl subdir, for example.)

Have a good 2008, rick

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]