SUNRPC: Fix encoding of accepted but unsuccessful RPC replies
authorChuck Lever <chuck.lever@oracle.com>
Tue, 2 May 2023 18:59:10 +0000 (14:59 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Wed, 3 May 2023 13:35:51 +0000 (09:35 -0400)
commit29cd2927fb914cc53b5ba4f67d2b74695c994ba4
treed6de4f51eaa08a47aab82f6738c895183ca44014
parentfc412a6196a6f46ece0e6e6b118556464f165800
SUNRPC: Fix encoding of accepted but unsuccessful RPC replies

Jiri Slaby says:
> I bisected to this ... as it breaks nfs3-only servers in 6.3.
> I.e. /etc/nfs.conf containing:
> [nfsd]
> vers4=no
>
> The client sees:
>  mount("10.0.2.15:/tmp", "/mnt", "nfs", 0, "vers=4.2,addr=10.0.2.15,clientad"...) = -1 EIO (Input/output error)
>  write(2, "mount.nfs: mount system call fai"..., 45
>  mount.nfs: mount system call failed for /mnt
>
> And the kernel says:
>  nfs4_discover_server_trunking unhandled error -5. Exiting with error EIO

Reported-by: Jiri Slaby <jirislaby@kernel.org>
Link: https://bugzilla.suse.com/show_bug.cgi?id=1210995
Fixes: 4bcf0343e8a6 ("SUNRPC: Set rq_accept_statp inside ->accept methods")
Tested-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
net/sunrpc/svc.c