From: Andy Shevchenko Date: Fri, 22 Aug 2014 12:19:44 +0000 (+0300) Subject: dmatest: prevent memory leakage on error path in thread X-Git-Tag: v3.18-rc1~11^2~18 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=c2e6f424a4abc9bb561133b00b2134ce11be34e9;p=~emulex%2Finfiniband.git dmatest: prevent memory leakage on error path in thread When we fail to allocate memory for thread->srcs or thread->dsts and src_cnt or dst_cnt great than 1 we leak memory on error path. This patch fixes the issue. Signed-off-by: Andy Shevchenko Signed-off-by: Vinod Koul --- diff --git a/drivers/dma/dmatest.c b/drivers/dma/dmatest.c index e27cec25c59..a8d7809e2f4 100644 --- a/drivers/dma/dmatest.c +++ b/drivers/dma/dmatest.c @@ -688,14 +688,14 @@ static int dmatest_func(void *data) runtime = ktime_us_delta(ktime_get(), ktime); ret = 0; +err_dstbuf: for (i = 0; thread->dsts[i]; i++) kfree(thread->dsts[i]); -err_dstbuf: kfree(thread->dsts); err_dsts: +err_srcbuf: for (i = 0; thread->srcs[i]; i++) kfree(thread->srcs[i]); -err_srcbuf: kfree(thread->srcs); err_srcs: kfree(pq_coefs);