]> git.baikalelectronics.ru Git - kernel.git/commit
NFSv4: Fix EXCHANGE_ID corrupt verifier issue
authorTrond Myklebust <trond.myklebust@primarydata.com>
Tue, 1 Aug 2017 20:02:47 +0000 (16:02 -0400)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Tue, 1 Aug 2017 20:28:55 +0000 (16:28 -0400)
commit26f5a7bca93cbfb93fd9190a364eced42c9360f8
tree2e90e12a96fc87b33c34be6082bf42be81322154
parentad4d67bfac3718709d7e69d4950ff5c5386e9040
NFSv4: Fix EXCHANGE_ID corrupt verifier issue

The verifier is allocated on the stack, but the EXCHANGE_ID RPC call was
changed to be asynchronous by commit 93c724a26de1c. If we interrrupt
the call to rpc_wait_for_completion_task(), we can therefore end up
transmitting random stack contents in lieu of the verifier.

Fixes: 93c724a26de1c ("NFS setup async exchange_id")
Cc: stable@vger.kernel.org # v4.9+
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
fs/nfs/nfs4proc.c
fs/nfs/nfs4xdr.c
include/linux/nfs_xdr.h