#1150964 nfs-kernel-server: autostart or listeners won't start with nfsdctl reporting "Error: Invalid argument"

Package:
nfs-kernel-server
Source:
nfs-kernel-server
Description:
support for NFS kernel server
Submitter:
Christian Montanari
Date:
2026-10-21 09:15:01 UTC
Severity:
normal
Tags:
#1150964#5
Date:
2026-10-15 09:33:02 UTC
From:
To:
running "nfsdctl autostart" fails to start any kernel nfs servers
, this , reporting "nfsdctl: Error: Invalid argument".

same with trying instanciating a listener as the event kernel trace for  "nfsdctl listener +tcp::2049" shows...:

"...
# tracer: function_graph
#
# CPU  DURATION                  FUNCTION CALLS
# |     |   |                     |   |   |   |
 3)               |  /* netlink_extack: msg=Unknown attribute type */
..."
("nfsdctl listener +tcp:127.0.0.1:2049" is with same invalid argument).

using commands ...:

cd /sys/kernel/tracing                       # as root
echo nfsd_nl_listener_set_doit > set_graph_function
echo function_graph > current_tracer
echo 1 > options/funcgraph-retval           # if your kernel has it
echo 1 > events/netlink/netlink_extack/enable
echo 1 > tracing_on
nfsdctl listener +tcp::2049
echo 0 > tracing_on
cat trace


I had a jugle with https://claude.ai/chat/feb4de00-a80d-4063-b9d6-eec0417ce2f9 ,

and it pointed out to look for some mismatch with /usr/include/linux/nfsd_netlink.h and the one of kernel releases,

since kernel users interactions are done using agreed and well ordered codes...(must be  with the 'NFSD_A_' families).

those must have been sabotaged to avoid backward compatibility....!

(I speculate also that, consequently, "mount -t nfs4 -o sec=krb5..."  will fail client side with same error.)



TBC.

#1150964#10
Date:
2026-10-21 09:12:47 UTC
From:
To:
Hi Christian,

The systemd service has on purpose the following constructs:

ExecStart=/bin/sh -c '/usr/sbin/nfsdctl autostart || /usr/sbin/rpc.nfsd'
ExecStop=/bin/sh -c '/usr/sbin/nfsdctl threads 0 || /usr/sbin/rpc.nfsd 0'

so when the netlink support is not yet there in the kernel the nfsd
still get started (and work).

If you do not agree on how it is implemented upstream, because you
cannot use nfsdctl directly to autostart the nfsd, can you please
approach linux-nfs? Please loop back here your report.

Thank you already!

Regards,
Salvatore