Hi, On Wed, Jul 24, 2024 at 12:42:44PM +0200, Joachim Ring wrote: > Package: linux-image > Version: 5.10.0-31 > > Hi, > > yesterday I was patching some box still on bullseye 32 bit which is serving a > large NFSv2 share for some very ancient AIX workstations needed to sift > though a huge library of old CAD files before deciding which one needs to be > converted to sth current and adapted as needed. > Converting the library is not an option, unfortunately. Neither is a more > current version of NFS afaik - the AIX workstations are not mine and the last > time I used AIX was in the early 2000s... > All of the above lives behind a firewall, of course... > > After the bullseye box came back up and one CAD user tested the mount, it > didn't work. I tried a few things in /etc/defaults/nfs-kernel-server but > whenever NFSv2 was asked for, I got an error message in syslog and "rpcinfo > -p hostname | fgrep nfs" showed only v3 and v4. Since my maintenance window > came to to an end, I had to go back to the snapshot and everybody except me > was happy again. > > I set up the same scenario on a bullseye testbox today (64 bit unfortunately) > with roughly the same patchlevel as the nfs server and recreated the scenario: > > before upgrading from 11.9 to 11.10 all is fine > > # rpcinfo -p hisws0028 | fgrep nfs > 100003 2 tcp 2049 nfs > 100003 3 tcp 2049 nfs > 100003 4 tcp 2049 nfs > 100003 2 udp 2049 nfs > 100003 3 udp 2049 nfs > # uname -a > Linux hisws0028 5.10.0-30-amd64 #1 SMP Debian 5.10.218-1 (2024-06-01) x86_64 > GNU/Linux > # cat /etc/debian_version > 11.9 > > an apt upgrade and reboot later no more NFSv2 > > # rpcinfo -p hisws0028 | fgrep nfs > 100003 3 tcp 2049 nfs > 100003 4 tcp 2049 nfs > 100003 3 udp 2049 nfs > # uname -a > Linux hisws0028 5.10.0-31-amd64 #1 SMP Debian 5.10.221-1 (2024-07-14) x86_64 > GNU/Linux > # cat /etc/debian_version > 11.10 > > And the well known error message in syslog: > Jul 24 11:55:11 hisws0028 rpc.nfsd[1570]: Writing version string to kernel: > +2 +3 +4 > Jul 24 11:55:11 hisws0028 rpc.nfsd[1570]: Setting version failed: errno 22 > (Invalid argument) > > I then tried to diff the kernel configs and got the following: > > # diff /boot/config-5.10.0-30-amd64 /boot/config-5.10.0-31-amd64 > 3c3 > < # Linux/x86 5.10.218 Kernel Configuration > --- > > # Linux/x86 5.10.221 Kernel Configuration > 28c28 > < CONFIG_BUILD_SALT="5.10.0-30-amd64" > --- > > CONFIG_BUILD_SALT="5.10.0-31-amd64" > 8879,8880c8879 > < CONFIG_NFSD_V2_ACL=y > < CONFIG_NFSD_V3=y > --- > > # CONFIG_NFSD_V2 is not set > 8893a8893 > > CONFIG_NFS_V4_2_SSC_HELPER=y > > So it seems that the 5.10.0-31 kernel was built with NFSv2 support disabled, > unlike earlier ones. I could not find anything regarding NFS in the debian > 11.10 release notes. > > Can we please get NFSv2 support back in the kernel for those who still have > to use it? Disabling it in userland by default should be fine from a security > point of view.
This is a consequence of the upstream backporting in the 5.10.y series with the NFS stack, and caused by the commit 4ab1211c28f1 ("nfsd: allow disabling NFSv2 at compile time"). Right, we might enable this for the time beeing in bullseye again (in the next upload). Regards, Salvatore