From: Hangyu Hua Date: Wed, 13 Jul 2022 00:55:11 +0000 (+0900) Subject: net: 9p: fix refcount leak in p9_read_work() error handling X-Git-Tag: v5.15.73~1198 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8324649b0035cbb30ebc3ca901540cb392e89041;p=platform%2Fkernel%2Flinux-rpi.git net: 9p: fix refcount leak in p9_read_work() error handling [ Upstream commit 4ac7573e1f9333073fa8d303acc941c9b7ab7f61 ] p9_req_put need to be called when m->rreq->rc.sdata is NULL to avoid temporary refcount leak. Link: https://lkml.kernel.org/r/20220712104438.30800-1-hbh25y@gmail.com Fixes: 728356dedeff ("9p: Add refcount to p9_req_t") Signed-off-by: Hangyu Hua [Dominique: commit wording adjustments, p9_req_put argument fixes for rebase] Signed-off-by: Dominique Martinet Signed-off-by: Sasha Levin --- diff --git a/net/9p/trans_fd.c b/net/9p/trans_fd.c index c55c8a6..6fe3719 100644 --- a/net/9p/trans_fd.c +++ b/net/9p/trans_fd.c @@ -345,6 +345,7 @@ static void p9_read_work(struct work_struct *work) p9_debug(P9_DEBUG_ERROR, "No recv fcall for tag %d (req %p), disconnecting!\n", m->rc.tag, m->rreq); + p9_req_put(m->client, m->rreq); m->rreq = NULL; err = -EIO; goto error;