nfsd: don't destroy global nfs4_file table in per-net shutdown
authorJeff Layton <jlayton@kernel.org>
Sat, 11 Feb 2023 12:50:08 +0000 (07:50 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Sat, 11 Feb 2023 17:09:44 +0000 (12:09 -0500)
commit4102db175b5d884d133270fdbd0e59111ce688fc
tree350c62bf5ef54c610c6a13e29120460f0a00099f
parent4bdbba54e9b1c769da8ded9abd209d765715e1d6
nfsd: don't destroy global nfs4_file table in per-net shutdown

The nfs4_file table is global, so shutting it down when a containerized
nfsd is shut down is wrong and can lead to double-frees. Tear down the
nfs4_file_rhltable in nfs4_state_shutdown instead of
nfs4_state_shutdown_net.

Fixes: d47b295e8d76 ("NFSD: Use rhashtable for managing nfs4_file objects")
Link: https://bugzilla.redhat.com/show_bug.cgi?id=2169017
Reported-by: JianHong Yin <jiyin@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfs4state.c