From 7d01d821b05b26304ab8f8fc148e690cb5ffd8b3 Mon Sep 17 00:00:00 2001 From: blogic Date: Wed, 28 Jan 2015 12:01:51 +0000 Subject: [PATCH] kernel: add support for NFSv4 To: openwrt-devel@lists.openwrt.org This work is based on Daniel Colascione's submission to the OpenWrt devel mailing list on January 15th, 2014. I modified his patch so that it applied to the current OpenWrt Barrier Breaker tree. Signed-off-by: W. Michael Petullo git-svn-id: svn://svn.openwrt.org/openwrt/branches/barrier_breaker@44162 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/kernel/linux/modules/fs.mk | 50 ++++++++++++++-------- package/kernel/linux/modules/lib.mk | 15 +++++++ package/kernel/linux/modules/netsupport.mk | 14 ++++++ 3 files changed, 62 insertions(+), 17 deletions(-) diff --git a/package/kernel/linux/modules/fs.mk b/package/kernel/linux/modules/fs.mk index c117415..9e3470b 100644 --- a/package/kernel/linux/modules/fs.mk +++ b/package/kernel/linux/modules/fs.mk @@ -292,12 +292,24 @@ define KernelPackage/fs-nfs/description Kernel module for NFS support endef +define KernelPackage/fs-nfs/config + if PACKAGE_kmod-fs-nfs + config KERNEL_NFS_V4 + bool "Support NFSv4 in NFS client" + depends on PACKAGE_kmod-fs-sunrpc-auth-rpcgss + default n + help + Select this option to support NFSv4 in the NFS server + endif +endef + $(eval $(call KernelPackage,fs-nfs)) define KernelPackage/fs-nfs-common SUBMENU:=$(FS_MENU) TITLE:=Common NFS filesystem modules + DEPENDS:=+kmod-lib-oid-registry KCONFIG:= \ CONFIG_LOCKD \ CONFIG_SUNRPC @@ -310,36 +322,40 @@ endef $(eval $(call KernelPackage,fs-nfs-common)) -define KernelPackage/fs-nfs-common-v4 +define KernelPackage/fs-sunrpc-auth-rpcgss SUBMENU:=$(FS_MENU) - TITLE:=Common NFS V4 filesystem modules - KCONFIG+=\ - CONFIG_SUNRPC_GSS\ - CONFIG_NFS_V4=y\ - CONFIG_NFSD_V4=y - DEPENDS:= @BROKEN - FILES+=$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko - AUTOLOAD=$(call AutoLoad,30,auth_rpcgss) -endef - -define KernelPackage/fs-nfs-common-v4/description - Kernel modules for NFS V4 & NFSD V4 kernel support + TITLE:=GSS authentication for SUN RPC + DEPENDS:=+kmod-fs-nfs-common + KCONFIG:=CONFIG_SUNRPC_GSS + FILES:= \ + $(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.ko + AUTOLOAD:=$(call AutoLoad,30,auth_rpcgss) endef -$(eval $(call KernelPackage,fs-nfs-common-v4)) - +$(eval $(call KernelPackage,fs-sunrpc-auth-rpcgss)) define KernelPackage/fs-nfsd SUBMENU:=$(FS_MENU) TITLE:=NFS kernel server support - DEPENDS:=+kmod-fs-nfs-common +kmod-fs-exportfs - KCONFIG:= \ + DEPENDS:=+kmod-fs-nfs-common +kmod-fs-exportfs +kmod-fs-sunrpc-auth-rpcgss + KCONFIG= \ CONFIG_NFSD \ CONFIG_NFSD_FAULT_INJECTION=n FILES:=$(LINUX_DIR)/fs/nfsd/nfsd.ko AUTOLOAD:=$(call AutoLoad,40,nfsd) endef +define KernelPackage/fs-nfsd/config + if PACKAGE_kmod-fs-nfsd + config KERNEL_NFSD_V4 + bool "Support NFSv4 in NFS server" + depends on PACKAGE_kmod-fs-sunrpc-auth-rpcgss + default n + help + Select this option to support NFSv4 in the NFS server + endif +endef + define KernelPackage/fs-nfsd/description Kernel module for NFS kernel server support endef diff --git a/package/kernel/linux/modules/lib.mk b/package/kernel/linux/modules/lib.mk index cd919ba..a148da3 100644 --- a/package/kernel/linux/modules/lib.mk +++ b/package/kernel/linux/modules/lib.mk @@ -202,3 +202,18 @@ define KernelPackage/lib-cordic/description endef $(eval $(call KernelPackage,lib-cordic)) + + +define KernelPackage/lib-oid-registry + SUBMENU:=$(LIB_MENU) + TITLE:=OID-Registry function support + KCONFIG:=CONFIG_OID_REGISTRY + FILES:=$(LINUX_DIR)/lib/oid_registry.ko + AUTOLOAD:=$(call AutoProbe,oid-registry) +endef + +define KernelPackage/lib-oid-registry/description + Kernel module for OID-Registry function support +endef + +$(eval $(call KernelPackage,lib-oid-registry)) diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk index fc85e22..bffb09c 100644 --- a/package/kernel/linux/modules/netsupport.mk +++ b/package/kernel/linux/modules/netsupport.mk @@ -967,3 +967,17 @@ define KernelPackage/rxrpc/description endef $(eval $(call KernelPackage,rxrpc)) + +define KernelPackage/dns-resolver + SUBMENU:=$(NETWORK_SUPPORT_MENU) + TITLE:=DNS-resolver modules + KCONFIG:=CONFIG_DNS_RESOLVER + FILES:= \ + $(LINUX_DIR)/net/dns_resolver/dns_resolver.ko +endef + +define KernelPackage/dns-resolver/description + Kernel modules for DNS-RESOLVER support +endef + +$(eval $(call KernelPackage,dns-resolver)) -- 2.35.1