kernel_samsung_a53x/net/sunrpc
Chuck Lever cff4ebbbbf nfsd: don't allow nfsd threads to be signalled.
[ Upstream commit 3903902401451b1cd9d797a8c79769eb26ac7fe5 ]

The original implementation of nfsd used signals to stop threads during
shutdown.
In Linux 2.3.46pre5 nfsd gained the ability to shutdown threads
internally it if was asked to run "0" threads.  After this user-space
transitioned to using "rpc.nfsd 0" to stop nfsd and sending signals to
threads was no longer an important part of the API.

In commit 3ebdbe5203a8 ("SUNRPC: discard svo_setup and rename
svc_set_num_threads_sync()") (v5.17-rc1~75^2~41) we finally removed the
use of signals for stopping threads, using kthread_stop() instead.

This patch makes the "obvious" next step and removes the ability to
signal nfsd threads - or any svc threads.  nfsd stops allowing signals
and we don't check for their delivery any more.

This will allow for some simplification in later patches.

A change worth noting is in nfsd4_ssc_setup_dul().  There was previously
a signal_pending() check which would only succeed when the thread was
being shut down.  It should really have tested kthread_should_stop() as
well.  Now it just does the latter, not the former.

Signed-off-by: NeilBrown <neilb@suse.de>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
[ cel: adjusted to apply to v5.10.y ]
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 12:28:32 +01:00
..
auth_gss Revert "SUNRPC: Use RMW bitops in single-threaded hot paths" 2024-11-19 12:28:29 +01:00
xprtrdma Revert "SUNRPC: Use RMW bitops in single-threaded hot paths" 2024-11-19 12:28:29 +01:00
addr.c net: sunrpc: Fix an off by one in rpc_sockaddr2uaddr() 2024-11-19 08:44:57 +01:00
auth.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
auth_null.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
auth_unix.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
backchannel_rqst.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cache.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clnt.c sunrpc: fix NFSACL RPC retry on soft mount 2024-11-19 12:27:09 +01:00
debugfs.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netns.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rpc_pipe.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rpcb_clnt.c SUNRPC: Add an IS_ERR() check back to where it was 2024-11-18 11:43:19 +01:00
sched.c SUNRPC: Trace calls to .rpc_call_done 2024-11-19 12:27:47 +01:00
socklib.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
socklib.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stats.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sunrpc.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sunrpc_syms.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
svc.c Revert "SUNRPC: Use RMW bitops in single-threaded hot paths" 2024-11-19 12:28:29 +01:00
svc_xprt.c nfsd: don't allow nfsd threads to be signalled. 2024-11-19 12:28:32 +01:00
svcauth.c SUNRPC: Add svc_rqst::rq_auth_stat 2024-11-19 12:27:45 +01:00
svcauth_unix.c SUNRPC: Set rq_auth_stat in the pg_authenticate() callout 2024-11-19 12:27:45 +01:00
svcsock.c nfsd: fix double fget() bug in __write_ports_addfd() 2024-11-19 12:28:32 +01:00
sysctl.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
timer.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xdr.c NFSD: Refactor common code out of dirlist helpers 2024-11-19 12:28:23 +01:00
xprt.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xprtmultipath.c SUNRPC: Fix a suspicious RCU usage warning 2024-11-18 12:13:10 +01:00
xprtsock.c params: lift param_set_uint_minmax to common code 2024-11-19 12:27:09 +01:00