xprtrdma: Fix regbuf data not freed in rpcrdma_req_create()

[ Upstream commit 9181f40fb2952fd59ecb75e7158620c9c669eee3 ]

If rdma receive buffer allocate failed, should call rpcrdma_regbuf_free()
to free the send buffer, otherwise, the buffer data will be leaked.

Fixes: bb93a1ae2b ("xprtrdma: Allocate req's regbufs at xprt create time")
Signed-off-by: Zhang Xiaoxu <zhangxiaoxu5@huawei.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Zhang Xiaoxu 2022-11-20 15:34:29 +08:00 committed by Greg Kroah-Hartman
parent c7e9624d90
commit bcebcb11fc

View File

@ -1037,6 +1037,7 @@ out4:
kfree(req->rl_sendbuf);
out3:
kfree(req->rl_rdmabuf);
rpcrdma_regbuf_free(req->rl_sendbuf);
out2:
kfree(req);
out1: