Loading include/linux/sunrpc/xprt.h +1 −0 Original line number Diff line number Diff line Loading @@ -281,6 +281,7 @@ void xprt_release(struct rpc_task *task); struct rpc_xprt * xprt_get(struct rpc_xprt *xprt); void xprt_put(struct rpc_xprt *xprt); struct rpc_xprt * xprt_alloc(int size, int max_req); void xprt_free(struct rpc_xprt *); static inline __be32 *xprt_skip_transport_header(struct rpc_xprt *xprt, __be32 *p) { Loading net/sunrpc/xprt.c +7 −0 Original line number Diff line number Diff line Loading @@ -984,6 +984,13 @@ out: } EXPORT_SYMBOL_GPL(xprt_alloc); void xprt_free(struct rpc_xprt *xprt) { kfree(xprt->slot); kfree(xprt); } EXPORT_SYMBOL_GPL(xprt_free); /** * xprt_reserve - allocate an RPC request slot * @task: RPC task requesting a slot allocation Loading net/sunrpc/xprtrdma/transport.c +2 −5 Original line number Diff line number Diff line Loading @@ -251,9 +251,7 @@ xprt_rdma_destroy(struct rpc_xprt *xprt) xprt_rdma_free_addresses(xprt); kfree(xprt->slot); xprt->slot = NULL; kfree(xprt); xprt_free(xprt); dprintk("RPC: %s: returning\n", __func__); Loading Loading @@ -401,8 +399,7 @@ out3: out2: rpcrdma_ia_close(&new_xprt->rx_ia); out1: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ERR_PTR(rc); } Loading net/sunrpc/xprtsock.c +4 −8 Original line number Diff line number Diff line Loading @@ -774,8 +774,7 @@ static void xs_destroy(struct rpc_xprt *xprt) xs_close(xprt); xs_free_peer_addresses(xprt); kfree(xprt->slot); kfree(xprt); xprt_free(xprt); module_put(THIS_MODULE); } Loading Loading @@ -2362,8 +2361,7 @@ static struct rpc_xprt *xs_setup_udp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading Loading @@ -2438,8 +2436,7 @@ static struct rpc_xprt *xs_setup_tcp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading Loading @@ -2519,8 +2516,7 @@ static struct rpc_xprt *xs_setup_bc_tcp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading Loading
include/linux/sunrpc/xprt.h +1 −0 Original line number Diff line number Diff line Loading @@ -281,6 +281,7 @@ void xprt_release(struct rpc_task *task); struct rpc_xprt * xprt_get(struct rpc_xprt *xprt); void xprt_put(struct rpc_xprt *xprt); struct rpc_xprt * xprt_alloc(int size, int max_req); void xprt_free(struct rpc_xprt *); static inline __be32 *xprt_skip_transport_header(struct rpc_xprt *xprt, __be32 *p) { Loading
net/sunrpc/xprt.c +7 −0 Original line number Diff line number Diff line Loading @@ -984,6 +984,13 @@ out: } EXPORT_SYMBOL_GPL(xprt_alloc); void xprt_free(struct rpc_xprt *xprt) { kfree(xprt->slot); kfree(xprt); } EXPORT_SYMBOL_GPL(xprt_free); /** * xprt_reserve - allocate an RPC request slot * @task: RPC task requesting a slot allocation Loading
net/sunrpc/xprtrdma/transport.c +2 −5 Original line number Diff line number Diff line Loading @@ -251,9 +251,7 @@ xprt_rdma_destroy(struct rpc_xprt *xprt) xprt_rdma_free_addresses(xprt); kfree(xprt->slot); xprt->slot = NULL; kfree(xprt); xprt_free(xprt); dprintk("RPC: %s: returning\n", __func__); Loading Loading @@ -401,8 +399,7 @@ out3: out2: rpcrdma_ia_close(&new_xprt->rx_ia); out1: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ERR_PTR(rc); } Loading
net/sunrpc/xprtsock.c +4 −8 Original line number Diff line number Diff line Loading @@ -774,8 +774,7 @@ static void xs_destroy(struct rpc_xprt *xprt) xs_close(xprt); xs_free_peer_addresses(xprt); kfree(xprt->slot); kfree(xprt); xprt_free(xprt); module_put(THIS_MODULE); } Loading Loading @@ -2362,8 +2361,7 @@ static struct rpc_xprt *xs_setup_udp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading Loading @@ -2438,8 +2436,7 @@ static struct rpc_xprt *xs_setup_tcp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading Loading @@ -2519,8 +2516,7 @@ static struct rpc_xprt *xs_setup_bc_tcp(struct xprt_create *args) return xprt; ret = ERR_PTR(-EINVAL); out_err: kfree(xprt->slot); kfree(xprt); xprt_free(xprt); return ret; } Loading