If try_module_get failed, xpt_bc_xprt should be set to NULL, because xprt will be free. Don't needed using xprt_put to free xprt, because it is always new. Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx> --- net/sunrpc/xprtsock.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 4fcdf74..5ed124f 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c @@ -2986,10 +2986,10 @@ static struct rpc_xprt *xs_setup_bc_tcp(struct xprt_create *args) */ xprt_set_connected(xprt); - if (try_module_get(THIS_MODULE)) return xprt; - xprt_put(xprt); + + args->bc_xprt->xpt_bc_xprt = NULL; ret = ERR_PTR(-EINVAL); out_err: xs_xprt_free(xprt); -- 1.8.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html