nfs-kernel-server: update to 2.9.1
authorJohn Audia <redacted>
Sat, 11 Apr 2026 13:18:00 +0000 (09:18 -0400)
committerHannu Nyman <redacted>
Sat, 13 Jun 2026 11:42:14 +0000 (14:42 +0300)
Update to 2.9.1 which includes a new dependency on libnl, see changelog.

Changelog: https://www.kernel.org/pub/linux/utils/nfs-utils/2.9.1/2.9.1-Changelog

This upstream release has some peculiar commits, including disabling NFS
v4.0 by default and cache up calls migrated from /proc to netlink. In my
testing, two parameters are needed to the nfsv4.init file in order to maintain
functionality. Without these changes, there's a 90-second period where the
shares are simply unavailable.

Note that this cannot be merged until the changes to libnl have been
merged first. See: https://github.com/openwrt/openwrt/pull/22889

Signed-off-by: John Audia <redacted>
net/nfs-kernel-server/Makefile
net/nfs-kernel-server/files/nfsd.v4.init
net/nfs-kernel-server/patches/100-fix-host-build.patch
net/nfs-kernel-server/patches/240-fix-cleanup_lockfiles-function-linkage-in-exportd.patch

index a753c1a2b55a9067f747bffc9244d7a2ea1aac22..f69a82352b34d3c650a67b4e852dc4b3b5104503 100644 (file)
@@ -7,9 +7,9 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=nfs-kernel-server
-PKG_VERSION:=2.8.7
+PKG_VERSION:=2.9.1
 PKG_RELEASE:=1
-PKG_HASH:=59d0f1e17b18efaa60ea3ccf89a9cad3217f8d3b23c18d2fe34b25c8969d60ae
+PKG_HASH:=302846343bf509f8f884c23bdbd0fe853b7f7cbb6572060a9082279d13b21a2c
 
 PKG_SOURCE:=nfs-utils-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@KERNEL/linux/utils/nfs-utils/$(PKG_VERSION)
@@ -21,8 +21,8 @@ HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/nfs-utils-$(PKG_VERSION)
 PKG_BUILD_DIR:=$(BUILD_DIR)/nfs-utils-$(PKG_VERSION)
 PKG_INSTALL:=1
 PKG_BUILD_PARALLEL:=1
-PKG_BUILD_DEPENDS:=$(PKG_NAME)/host libevent2
-HOST_BUILD_DEPENDS:=libtirpc/host
+PKG_BUILD_DEPENDS:=$(PKG_NAME)/host libevent2 libnl
+HOST_BUILD_DEPENDS:=libtirpc/host libnl/host
 PKG_CONFIG_DEPENDS:=CONFIG_IPV6
 
 include $(INCLUDE_DIR)/host-build.mk
index b29a481a691c129f632fb020f0733b0c9bf77900..66f3b3db89804f367104a2a6c41ab0976634bffe 100644 (file)
@@ -20,7 +20,7 @@ start_service() {
        grep -q "$RPC_PIPEFS_D" /proc/mounts || mount -t rpc_pipefs sunrpc "$RPC_PIPEFS_D"
 
        procd_open_instance
-       procd_set_param command /usr/sbin/nfsv4.exportd -f
+       procd_set_param command /usr/sbin/nfsv4.exportd -f -L
        procd_close_instance
 
        procd_open_instance
@@ -35,7 +35,7 @@ start_service() {
        /usr/sbin/exportfs -r
 
        procd_open_instance
-       procd_set_param command /usr/sbin/rpc.nfsd -N 3
+       procd_set_param command /usr/sbin/rpc.nfsd -N 3 -V 4.0
        procd_close_instance
 }
 
index dd482008f88eac5e382f568c53f913cd29dd53ed..d7f0997e14f65185a64c183466dcaf110fad06f3 100644 (file)
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -363,9 +363,6 @@ CPPFLAGS="${nfsutils_save_CPPFLAGS}"
+@@ -369,9 +369,6 @@ CPPFLAGS="${nfsutils_save_CPPFLAGS}"
  AC_CHECK_HEADER(uuid/uuid.h, ,
        AC_MSG_ERROR([Cannot find needed header file uuid/uuid.h. Install libuuid-devel]))
  
@@ -10,7 +10,7 @@
  dnl Check for sqlite3
  AC_SQLITE3_VERS
  
-@@ -445,9 +442,6 @@ if test "$enable_gss" = yes; then
+@@ -451,9 +448,6 @@ if test "$enable_gss" = yes; then
    dnl 'gss' requires getnameinfo - at least for gssd_proc.c
    AC_CHECK_FUNC([getnameinfo], , [AC_MSG_ERROR([GSSAPI support requires 'getnameinfo' function])])
  
index fad57e04d82dff37bb90a679c194800d344cfc09..3004c0ee0e2bf1deef8d679bd9c9726d793c3f6f 100644 (file)
@@ -30,7 +30,7 @@ environment.
 
 --- a/utils/exportd/exportd.c
 +++ b/utils/exportd/exportd.c
-@@ -51,9 +51,10 @@ static char shortopts[] = "d:fghs:t:liT:
+@@ -53,9 +53,10 @@ static char shortopts[] = "d:fghs:t:liLT
  /*
   * Signal handlers.
   */
git clone https://git.99rst.org/PROJECT