From owner-svn-src-head@FreeBSD.ORG Thu May 28 19:45:12 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 526111065711; Thu, 28 May 2009 19:45:12 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 3D4A48FC0C; Thu, 28 May 2009 19:45:12 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n4SJjCBJ047900; Thu, 28 May 2009 19:45:12 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n4SJjBh1047893; Thu, 28 May 2009 19:45:11 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <200905281945.n4SJjBh1047893@svn.freebsd.org> From: Rick Macklem Date: Thu, 28 May 2009 19:45:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r192991 - in head/sys: conf modules modules/nfscl modules/nfscommon modules/nfsd X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 May 2009 19:45:13 -0000 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 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 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