]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit - net/sunrpc/clnt.c
SUNRPC: remove RPC client pipefs dentries after unregister
authorStanislav Kinsbursky <skinsbursky@parallels.com>
Wed, 11 Jan 2012 15:18:26 +0000 (19:18 +0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 31 Jan 2012 23:20:25 +0000 (18:20 -0500)
commitf5131257f771ad0e84cf0314a2a86b66318755a9
treebb91fb8a51ca5d0ad6483cc62d1d6c2956be6fb1
parent80df9d202255071c8ec610a6a3fdca5cac69f7bd
SUNRPC: remove RPC client pipefs dentries after unregister

Without this patch we have races:

rpc_fill_super rpc_free_client
rpc_pipefs_event(MOUNT) rpc_remove_pipedir
spin_lock(&rpc_client_lock);
rpc_setup_pipedir_sb
spin_unlock(&rpc_client_lock);
spin_lock(&rpc_client_lock);
(remove from list)
spin_unlock(&rpc_client_lock);
MEAMORY LEAKED

Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/clnt.c