Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Apr 2009 11:15:04 +0100
From:      Doug Rabson <dfr@rabson.org>
To:        Rick Macklem <rmacklem@uoguelph.ca>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: nfsv4 sharing nfssvc() with the regular nfsd
Message-ID:  <74607C8A-226C-47FB-BFA5-E99AF535AD01@rabson.org>
In-Reply-To: <Pine.GSO.4.63.0904021748300.26606@muncher.cs.uoguelph.ca>
References:  <Pine.GSO.4.63.0904021748300.26606@muncher.cs.uoguelph.ca>

next in thread | previous in thread | raw e-mail | index | archive | help

On 2 Apr 2009, at 23:01, Rick Macklem wrote:

> For nfsv4 to live side-by-side with the regular nfsd, they must either
> share the nfssvc() system call or a new one must be allocated for  
> nfsv4.
>
> As such, I've cobbled some code to-gether to allow the nfssvc()  
> syscall
> to be shared. It basically consists of a small module called nfssvc  
> with
> only the nfssvc() syscall function in it, where nfsserver and nfsv4
> "register" with it by setting the appropriate function pointer non- 
> null. These functions are then called, based on the NFSSVC_xxx flag  
> value. (I've coalesced the NFSSVC_xxx flags into a separate .h file,  
> to avoid confusion.)

This sounds about right.

>
> I also deleted the following, since I believe that it is just cruft.
> (sysproto.h is included in all of these files.)
> #ifndef _SYS_SYSPROTO_H_
> struct nfssvc_args {
> 	int flag;
> 	caddr_t argp;
> };
> #endif
> Is there a reason for the above?

I can't think of one so I'm going to go with 'historical reasons',

>
>
> I've attached the "diff -u" in case anyone would be willing to
> review it, rick.

The patch looks ok. The only thing I would change is to change the  
names of the various call_foo variables so that they start with "nfs_"  
for consistency.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?74607C8A-226C-47FB-BFA5-E99AF535AD01>