svn commit: r192991 - in head/sys: conf modules modules/nfscl modules/nfscommon modules/nfsd

Rick Macklem rmacklem at FreeBSD.org
Thu May 28 19:45:13 UTC 2009


Author: rmacklem
Date: Thu May 28 19:45:11 2009
New Revision: 192991
URL: http://svn.freebsd.org/changeset/base/192991

Log:
  Add the kernel build glue for the experimental NFS subsystem that
  includes support for NFSv4. The subsystem can optionally be linked
  into the kernel using the two options:
    NFSCL - the client
    NFSD - the server
  It is also built as three modules:
    nfscl - the client
    nfsd - the server
    nfscommon - functions shared by the client and server
  
  Approved by:	kib (mentor)

Added:
  head/sys/modules/nfscl/
  head/sys/modules/nfscl/Makefile   (contents, props changed)
  head/sys/modules/nfscommon/
  head/sys/modules/nfscommon/Makefile   (contents, props changed)
  head/sys/modules/nfsd/
  head/sys/modules/nfsd/Makefile   (contents, props changed)
Modified:
  head/sys/conf/NOTES
  head/sys/conf/files
  head/sys/conf/options
  head/sys/modules/Makefile

Modified: head/sys/conf/NOTES
==============================================================================
--- head/sys/conf/NOTES	Thu May 28 19:05:26 2009	(r192990)
+++ head/sys/conf/NOTES	Thu May 28 19:45:11 2009	(r192991)
@@ -964,6 +964,8 @@ options 	HPFS			#OS/2 File system
 options 	MSDOSFS			#MS DOS File System (FAT, FAT32)
 options 	NFSSERVER		#Network File System server
 options 	NFSLOCKD		#Network Lock Manager
+options 	NFSCL			#experimental NFS client with NFSv4
+options 	NFSD			#experimental NFS server with NFSv4
 
 # NT File System. Read-mostly, see mount_ntfs(8) for details.
 # For a full read-write NTFS support consider sysutils/fusefs-ntfs

Modified: head/sys/conf/files
==============================================================================
--- head/sys/conf/files	Thu May 28 19:05:26 2009	(r192990)
+++ head/sys/conf/files	Thu May 28 19:45:11 2009	(r192991)
@@ -1672,6 +1672,29 @@ fs/msdosfs/msdosfs_iconv.c	optional msdo
 fs/msdosfs/msdosfs_lookup.c	optional msdosfs
 fs/msdosfs/msdosfs_vfsops.c	optional msdosfs
 fs/msdosfs/msdosfs_vnops.c	optional msdosfs
+fs/nfs/nfs_commonkrpc.c		optional nfscl | nfsd
+fs/nfs/nfs_commonsubs.c		optional nfscl | nfsd
+fs/nfs/nfs_commonport.c		optional nfscl | nfsd
+fs/nfs/nfs_commonacl.c		optional nfscl | nfsd
+fs/nfsclient/nfs_clcomsubs.c	optional nfscl
+fs/nfsclient/nfs_clsubs.c	optional nfscl
+fs/nfsclient/nfs_clstate.c	optional nfscl
+fs/nfsclient/nfs_clkrpc.c	optional nfscl
+fs/nfsclient/nfs_clrpcops.c	optional nfscl
+fs/nfsclient/nfs_clvnops.c	optional nfscl
+fs/nfsclient/nfs_clnode.c	optional nfscl
+fs/nfsclient/nfs_clvfsops.c	optional nfscl
+fs/nfsclient/nfs_cllock.c	optional nfscl
+fs/nfsclient/nfs_clport.c	optional nfscl
+fs/nfsclient/nfs_clbio.c	optional nfscl
+fs/nfsclient/nfs_clnfsiod.c	optional nfscl
+fs/nfsserver/nfs_nfsdsocket.c	optional nfsd
+fs/nfsserver/nfs_nfsdsubs.c	optional nfsd
+fs/nfsserver/nfs_nfsdstate.c	optional nfsd
+fs/nfsserver/nfs_nfsdkrpc.c	optional nfsd
+fs/nfsserver/nfs_nfsdserv.c	optional nfsd
+fs/nfsserver/nfs_nfsdport.c	optional nfsd
+fs/nfsserver/nfs_nfsdcache.c	optional nfsd
 fs/ntfs/ntfs_compr.c		optional ntfs
 fs/ntfs/ntfs_iconv.c		optional ntfs_iconv
 fs/ntfs/ntfs_ihash.c		optional ntfs
@@ -2420,14 +2443,14 @@ nfsserver/nfs_srvsock.c		optional nfsser
 nfsserver/nfs_srvcache.c	optional nfsserver
 nfsserver/nfs_srvsubs.c		optional nfsserver
 nfsserver/nfs_syscalls.c	optional nfsserver
-nfs/nfs_nfssvc.c		optional nfsserver
-nlm/nlm_advlock.c		optional nfslockd nfsclient
-nlm/nlm_prot_clnt.c		optional nfslockd
-nlm/nlm_prot_impl.c		optional nfslockd
-nlm/nlm_prot_server.c		optional nfslockd
-nlm/nlm_prot_svc.c		optional nfslockd
-nlm/nlm_prot_xdr.c		optional nfslockd
-nlm/sm_inter_xdr.c		optional nfslockd
+nfs/nfs_nfssvc.c		optional nfsserver | nfscl | nfsd
+nlm/nlm_advlock.c		optional nfslockd nfsclient | nfsd nfsclient
+nlm/nlm_prot_clnt.c		optional nfslockd | nfsd
+nlm/nlm_prot_impl.c		optional nfslockd | nfsd
+nlm/nlm_prot_server.c		optional nfslockd | nfsd
+nlm/nlm_prot_svc.c		optional nfslockd | nfsd
+nlm/nlm_prot_xdr.c		optional nfslockd | nfsd
+nlm/sm_inter_xdr.c		optional nfslockd | nfsd
 # crypto support
 opencrypto/cast.c		optional crypto | ipsec
 opencrypto/criov.c		optional crypto
@@ -2447,32 +2470,32 @@ pci/intpm.c			optional intpm pci
 pci/ncr.c			optional ncr pci
 pci/nfsmb.c			optional nfsmb pci
 pci/viapm.c			optional viapm pci
-rpc/auth_none.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/auth_unix.c			optional krpc | nfslockd | nfsclient
-rpc/authunix_prot.c		optional krpc | nfslockd | nfsclient | nfsserver
-rpc/clnt_dg.c			optional krpc | nfslockd | nfsclient
-rpc/clnt_rc.c			optional krpc | nfslockd | nfsclient
-rpc/clnt_vc.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/getnetconfig.c		optional krpc | nfslockd | nfsclient | nfsserver
-rpc/inet_ntop.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/inet_pton.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/replay.c			optional krpc | nfslockd | nfsserver
-rpc/rpc_callmsg.c		optional krpc | nfslockd | nfsclient | nfsserver
-rpc/rpc_generic.c		optional krpc | nfslockd | nfsclient | nfsserver
-rpc/rpc_prot.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/rpcb_clnt.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/rpcb_prot.c			optional krpc | nfslockd | nfsclient | nfsserver
-rpc/svc.c			optional krpc | nfslockd | nfsserver
-rpc/svc_auth.c			optional krpc | nfslockd | nfsserver
-rpc/svc_auth_unix.c		optional krpc | nfslockd | nfsserver
-rpc/svc_dg.c			optional krpc | nfslockd | nfsserver
-rpc/svc_generic.c		optional krpc | nfslockd | nfsserver
-rpc/svc_vc.c			optional krpc | nfslockd | nfsserver
-rpc/rpcsec_gss/rpcsec_gss.c	optional krpc kgssapi | nfslockd kgssapi
-rpc/rpcsec_gss/rpcsec_gss_conf.c optional krpc kgssapi | nfslockd kgssapi
-rpc/rpcsec_gss/rpcsec_gss_misc.c optional krpc kgssapi | nfslockd kgssapi
-rpc/rpcsec_gss/rpcsec_gss_prot.c optional krpc kgssapi | nfslockd kgssapi
-rpc/rpcsec_gss/svc_rpcsec_gss.c	optional krpc kgssapi | nfslockd kgssapi
+rpc/auth_none.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/auth_unix.c			optional krpc | nfslockd | nfsclient | nfscl | nfsd
+rpc/authunix_prot.c		optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/clnt_dg.c			optional krpc | nfslockd | nfsclient | nfscl | nfsd
+rpc/clnt_rc.c			optional krpc | nfslockd | nfsclient | nfscl | nfsd
+rpc/clnt_vc.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/getnetconfig.c		optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/inet_ntop.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/inet_pton.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/replay.c			optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/rpc_callmsg.c		optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/rpc_generic.c		optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/rpc_prot.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/rpcb_clnt.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/rpcb_prot.c			optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+rpc/svc.c			optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/svc_auth.c			optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/svc_auth_unix.c		optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/svc_dg.c			optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/svc_generic.c		optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/svc_vc.c			optional krpc | nfslockd | nfsserver | nfscl | nfsd
+rpc/rpcsec_gss/rpcsec_gss.c	optional krpc kgssapi | nfslockd kgssapi | nfscl kgssapi | nfsd kgssapi
+rpc/rpcsec_gss/rpcsec_gss_conf.c optional krpc kgssapi | nfslockd kgssapi | nfscl kgssapi | nfsd kgssapi
+rpc/rpcsec_gss/rpcsec_gss_misc.c optional krpc kgssapi | nfslockd kgssapi | nfscl kgssapi | nfsd kgssapi
+rpc/rpcsec_gss/rpcsec_gss_prot.c optional krpc kgssapi | nfslockd kgssapi | nfscl kgssapi | nfsd kgssapi
+rpc/rpcsec_gss/svc_rpcsec_gss.c	optional krpc kgssapi | nfslockd kgssapi | nfscl kgssapi | nfsd kgssapi
 security/audit/audit.c		optional audit
 security/audit/audit_arg.c	optional audit
 security/audit/audit_bsm.c	optional audit

Modified: head/sys/conf/options
==============================================================================
--- head/sys/conf/options	Thu May 28 19:05:26 2009	(r192990)
+++ head/sys/conf/options	Thu May 28 19:45:11 2009	(r192991)
@@ -232,6 +232,13 @@ NFSSERVER	opt_nfs.h
 # supports modern features such as RPCSEC_GSS
 NFS_LEGACYRPC	opt_nfs.h
 
+# Use these options to compile the experimental nfs client and/or
+# server that supports NFSv4 into a kernel.
+# NFSCL - client
+# NFSD - server
+NFSCL		opt_nfs.h
+NFSD		opt_nfs.h
+
 # filesystems and libiconv bridge
 CD9660_ICONV	opt_dontuse.h
 MSDOSFS_ICONV	opt_dontuse.h

Modified: head/sys/modules/Makefile
==============================================================================
--- head/sys/modules/Makefile	Thu May 28 19:05:26 2009	(r192990)
+++ head/sys/modules/Makefile	Thu May 28 19:45:11 2009	(r192991)
@@ -185,7 +185,10 @@ SUBDIR=	${_3dfx} \
 	${_ndis} \
 	netgraph \
 	${_nfe} \
+	nfscl \
 	nfsclient \
+	nfscommon \
+	nfsd \
 	nfslockd \
 	nfsserver \
 	nfssvc \

Added: head/sys/modules/nfscl/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sys/modules/nfscl/Makefile	Thu May 28 19:45:11 2009	(r192991)
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+.PATH: ${.CURDIR}/../../fs/nfsclient
+KMOD=	nfscl
+SRCS=	vnode_if.h \
+	nfs_clrpcops.c \
+	nfs_clkrpc.c \
+	nfs_clstate.c \
+	nfs_clcomsubs.c \
+	nfs_clport.c \
+	nfs_clbio.c \
+	nfs_cllock.c \
+	nfs_clnfsiod.c \
+	nfs_clnode.c \
+	nfs_clsubs.c \
+	nfs_clvfsops.c \
+	nfs_clvnops.c \
+	opt_inet.h \
+	opt_inet6.h \
+	opt_bootp.h \
+	opt_nfsroot.h \
+	opt_nfs.h \
+	opt_ufs.h \
+	opt_kgssapi.h
+
+.include <bsd.kmod.mk>

Added: head/sys/modules/nfscommon/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sys/modules/nfscommon/Makefile	Thu May 28 19:45:11 2009	(r192991)
@@ -0,0 +1,15 @@
+# $FreeBSD$
+
+.PATH: ${.CURDIR}/../../fs/nfs 
+KMOD=	nfscommon
+SRCS=	vnode_if.h \
+	nfs_commonacl.c \
+	nfs_commonkrpc.c \
+	nfs_commonport.c \
+	nfs_commonsubs.c \
+	opt_kgssapi.h \
+	opt_ufs.h \
+	opt_inet6.h \
+	opt_nfs.h
+
+.include <bsd.kmod.mk>

Added: head/sys/modules/nfsd/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sys/modules/nfsd/Makefile	Thu May 28 19:45:11 2009	(r192991)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+
+.PATH: ${.CURDIR}/../../fs/nfsserver
+KMOD=	nfsd
+SRCS=	vnode_if.h \
+	nfs_nfsdserv.c \
+	nfs_nfsdcache.c \
+	nfs_nfsdkrpc.c \
+	nfs_nfsdsocket.c \
+	nfs_nfsdstate.c \
+	nfs_nfsdsubs.c \
+	nfs_nfsdport.c \
+	opt_ufs.h \
+	opt_nfs.h \
+	opt_inet6.h \
+	opt_kgssapi.h
+
+.include <bsd.kmod.mk>


More information about the svn-src-head mailing list