Hi

We recently migrated to new nfs server running on debian 12 bookworm

On the client Apache processes started randomly switching to D state,

In apache fluststatus Process 93661 a mis 10786 sec
=============

4-1 93661 1598/ W 15.92 10786 0 2367404 0.0 71.45 142.44 172.20.1.47 http/1.1 
sisca.groupe-mfc.fr:80 POST 
/deverrouille-fiche-ajax.php?sTable=prospects&iCode=243239
====


ps aux ==> Process 93661 un interruptible sleep
============
root@hexaom-v2-vm-prod-front2:~# while true; do date; ps auxf | awk 
'{if($8=="D") print $0;}'; sleep 1; done
Fri 26 Apr 2024 12:37:59 PM CEST
www-data   93661  0.1  1.4 315100 120468 ?       D    08:45   0:14  \_ 
/usr/sbin/apache2 -k start
www-data  119374  0.2  0.0      0     0 ?        D    11:33   0:10  \_ [apache2]
www-data  127425  0.1  0.8 214520 68308 ?        D    12:27   0:00  \_ 
/usr/sbin/apache2 -k start
============


process stack :  (can't attach using gdp gcore etc ....)
===========
root@hexaom-v2-vm-prod-front2:~# cat /proc/93661/stack
[<0>] wait_on_commit+0x71/0xb0 [nfs]
[<0>] __nfs_commit_inode+0x131/0x180 [nfs]
[<0>] nfs_wb_all+0xb4/0x100 [nfs]
[<0>] nfs4_file_flush+0x6f/0xa0 [nfsv4]
[<0>] filp_close+0x2f/0x70
[<0>] __x64_sys_close+0x1e/0x60
[<0>] do_syscall_64+0x30/0x80
[<0>] entry_SYSCALL_64_after_hwframe+0x62/0xc7
=========



In the client  debian 11
=====
 rpcdebug -m nfs -s all
Apr 26 11:30:15 hexaom-v2-vm-prod-front2 kernel: [51318.693854] 
decode_attr_fs_locations: fs_locations done, error = 0
Apr 26 11:30:15 hexaom-v2-vm-prod-front2 kernel: [51318.693871] 
nfs41_sequence_process: Error 0 free the slot
Apr 26 11:30:15 hexaom-v2-vm-prod-front2 kernel: [51318.694161] 
nfs41_sequence_process: Error 0 free the slot
Apr 26 11:30:15 hexaom-v2-vm-prod-front2 kernel: [51318.694301] 
nfs41_sequence_process: Error 0 free the slot
=====

No error in nfds server even with debug all : rpcdebug -m nfsd -s all

Information :  on client and server
*******************



client :

========
root@hexaom-v2-vm-prod-front2:~# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/";
SUPPORT_URL="https://www.debian.org/support";
BUG_REPORT_URL="https://bugs.debian.org/";


root@hexaom-v2-vm-prod-front2:~# uname -a
Linux hexaom-v2-vm-prod-front2 5.10.0-28-amd64 #1 SMP Debian 5.10.209-2 
(2024-01-31) x86_64 GNU/Linux


root@hexaom-v2-vm-prod-front2:~# dpkg -l | grep -i nfs
ii  liblockfile1:amd64                1.17-1+b1                                 
                                 amd64        NFS-safe locking library
ii  libnfsidmap2:amd64                0.25-6                                    
                                 amd64        NFS idmapping library
ii  nfs-common                        1:1.3.4-6                                 
                                 amd64        NFS support files common to 
client and server


fstab:
192.20.2.30:/NFS/sessions_v2 /srv/sessions nfs 
defaults,rw,relatime,vers=4.1,hard,timeo=100,retrans=4,_netdev     0 0


=============




Server:
=============
root@SERVSESSION01:~# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/";
SUPPORT_URL="https://www.debian.org/support";
BUG_REPORT_URL="https://bugs.debian.org/";


Linux SERVSESSION01 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 
(2024-02-01) x86_64 GNU/Linux

*********
root@SERVSESSION01:~# dpkg -l | grep nfs
ii  libnfsidmap1:amd64                1:2.6.2-4                           amd64 
       NFS idmapping library
ii  nfs-common                        1:2.6.2-4                           amd64 
       NFS support files common to client and server
ii  nfs-kernel-server                 1:2.6.2-4                           amd64 
       support for NFS kernel server
root@SERVSESSION01:~# dpkg -l | grep rpc
ii  libtirpc-common                   1.3.3+ds-1                          all   
       transport-independent RPC library - common files
ii  libtirpc3:amd64                   1.3.3+ds-1                          amd64 
       transport-independent RPC library
ii  rpcbind                           1.2.6-6+b1                          amd64 
       converts RPC program numbers into universal addresses
root@SERVSESSION01:~#
**********


*********
root@SERVSESSION01:~# cat /etc/default/nfs-common
# If you do not set values for the NEED_ options, they will be attempted
# autodetected; this should be sufficient for most people. Valid alternatives
# for the NEED_ options are "yes" and "no".

# Do you want to start the statd daemon? It is not needed for NFSv4.
NEED_STATD=

# Options for rpc.statd.
#   Should rpc.statd listen on a specific port? This is especially useful
#   when you have a port-based firewall. To use a fixed port, set this
#   this variable to a statd argument like: "--port 4000 --outgoing-port 4001".
#   For more information, see rpc.statd(8) or http://wiki.debian.org/SecuringNFS
STATDOPTS=

# Do you want to start the idmapd daemon? It is only needed for NFSv4.
#NEED_IDMAPD=
NEED_IDMAPD="yes"

# Do you want to start the gssd daemon? It is required for Kerberos mounts.
NEED_GSSD=
************

************
root@SERVSESSION01:~# cat /etc/default/nfs-kernel-server
# Number of servers to start up
RPCNFSDCOUNT=8

# Runtime priority of server (see nice(1))
RPCNFSDPRIORITY=0

# Options for rpc.mountd.
# If you have a port-based firewall, you might want to set up
# a fixed port here using the --port option. For more information,
# see rpc.mountd(8) or http://wiki.debian.org/SecuringNFS
# To disable NFSv4 on the server, specify '--no-nfs-version 4' here
RPCMOUNTDOPTS="--manage-gids"

# Do you want to start the svcgssd daemon? It is only required for Kerberos
# exports. Valid alternatives are "yes" and "no"; the default is "no".
NEED_SVCGSSD=""

# Options for rpc.svcgssd.
RPCSVCGSSDOPTS=""
*********


********
root@SERVSESSION01:~# cat /etc/nfs.conf | grep -vP '^#'
[general]
pipefs-directory=/run/rpc_pipefs
[nfsrahead]
[exports]
[exportfs]
[gssd]
[lockd]
[exportd]
[mountd]
manage-gids=y
[nfsdcld]
[nfsdcltrack]
[nfsd]

[statd]
[sm-notify]
[svcgssd]
******


****
root@SERVSESSION01:~# cat /etc/idmapd.conf
[General]

Verbosity = 0
# set your own domain here, if it differs from FQDN minus hostname
# Domain = localdomain

[Mapping]

Nobody-User = nobody
Nobody-Group = nogroup
****
=============

Could any one help, did any one encounter this bug ?

Best regards
























Reply via email to