From: Navid Emamdoost Date: Wed, 11 Sep 2019 15:09:02 +0000 (-0500) Subject: net: qrtr: fix memort leak in qrtr_tun_write_iter X-Git-Tag: v4.19.89~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=754e3c0c31c96cf3a4a54ed2a8c63cca28109136;p=thirdparty%2Fkernel%2Fstable.git net: qrtr: fix memort leak in qrtr_tun_write_iter commit a21b7f0cff1906a93a0130b74713b15a0b36481d upstream. In qrtr_tun_write_iter the allocated kbuf should be release in case of error or success return. v2 Update: Thanks to David Miller for pointing out the release on success path as well. Signed-off-by: Navid Emamdoost Signed-off-by: David S. Miller Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/qrtr/tun.c b/net/qrtr/tun.c index ccff1e544c218..e35869e81766e 100644 --- a/net/qrtr/tun.c +++ b/net/qrtr/tun.c @@ -84,11 +84,14 @@ static ssize_t qrtr_tun_write_iter(struct kiocb *iocb, struct iov_iter *from) if (!kbuf) return -ENOMEM; - if (!copy_from_iter_full(kbuf, len, from)) + if (!copy_from_iter_full(kbuf, len, from)) { + kfree(kbuf); return -EFAULT; + } ret = qrtr_endpoint_post(&tun->ep, kbuf, len); + kfree(kbuf); return ret < 0 ? ret : len; }