From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Date: Sat, 13 Oct 2018 10:28:43 +0000 Subject: [PATCH] EDAC, thunderx: memory leak in thunderx_l2c_threaded_isr() Message-Id: <20181013102843.GG16086@mwanda> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: David Daney , Sergey Temerkhanov Cc: Jan Glauber , Borislav Petkov , Mauro Carvalho Chehab , linux-edac@vger.kernel.org, kernel-janitors@vger.kernel.org I found this memory leak with static analysis, but it looks like it might be pretty bad because it affects the success path. Fixes: 41003396f932 ("EDAC, thunderx: Add Cavium ThunderX EDAC driver") Signed-off-by: Dan Carpenter --- It's also possible that I have misread the code. It seems like an obvious fix but I haven't tested it. drivers/edac/thunderx_edac.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/edac/thunderx_edac.c b/drivers/edac/thunderx_edac.c index c009d94f40c5..34be60fe6892 100644 --- a/drivers/edac/thunderx_edac.c +++ b/drivers/edac/thunderx_edac.c @@ -1884,7 +1884,7 @@ static irqreturn_t thunderx_l2c_threaded_isr(int irq, void *irq_id) default: dev_err(&l2c->pdev->dev, "Unsupported device: %04x\n", l2c->pdev->device); - return IRQ_NONE; + goto err_free; } while (CIRC_CNT(l2c->ring_head, l2c->ring_tail, @@ -1906,7 +1906,7 @@ static irqreturn_t thunderx_l2c_threaded_isr(int irq, void *irq_id) l2c->ring_tail++; } - return IRQ_HANDLED; + ret = IRQ_HANDLED; err_free: kfree(other); -- 2.18.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: EDAC, thunderx: memory leak in thunderx_l2c_threaded_isr() From: Dan Carpenter Message-Id: <20181013102843.GG16086@mwanda> Date: Sat, 13 Oct 2018 13:28:43 +0300 To: David Daney , Sergey Temerkhanov Cc: Jan Glauber , Borislav Petkov , Mauro Carvalho Chehab , linux-edac@vger.kernel.org, kernel-janitors@vger.kernel.org List-ID: SSBmb3VuZCB0aGlzIG1lbW9yeSBsZWFrIHdpdGggc3RhdGljIGFuYWx5c2lzLCBidXQgaXQgbG9v a3MgbGlrZSBpdAptaWdodCBiZSBwcmV0dHkgYmFkIGJlY2F1c2UgaXQgYWZmZWN0cyB0aGUgc3Vj Y2VzcyBwYXRoLgoKRml4ZXM6IDQxMDAzMzk2ZjkzMiAoIkVEQUMsIHRodW5kZXJ4OiBBZGQgQ2F2 aXVtIFRodW5kZXJYIEVEQUMgZHJpdmVyIikKU2lnbmVkLW9mZi1ieTogRGFuIENhcnBlbnRlciA8 ZGFuLmNhcnBlbnRlckBvcmFjbGUuY29tPgotLS0KSXQncyBhbHNvIHBvc3NpYmxlIHRoYXQgSSBo YXZlIG1pc3JlYWQgdGhlIGNvZGUuICBJdCBzZWVtcyBsaWtlIGFuCm9idmlvdXMgZml4IGJ1dCBJ IGhhdmVuJ3QgdGVzdGVkIGl0LgoKIGRyaXZlcnMvZWRhYy90aHVuZGVyeF9lZGFjLmMgfCA0ICsr LS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9lZGFjL3RodW5kZXJ4X2VkYWMuYyBiL2RyaXZlcnMvZWRhYy90aHVu ZGVyeF9lZGFjLmMKaW5kZXggYzAwOWQ5NGY0MGM1Li4zNGJlNjBmZTY4OTIgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZWRhYy90aHVuZGVyeF9lZGFjLmMKKysrIGIvZHJpdmVycy9lZGFjL3RodW5kZXJ4 X2VkYWMuYwpAQCAtMTg4NCw3ICsxODg0LDcgQEAgc3RhdGljIGlycXJldHVybl90IHRodW5kZXJ4 X2wyY190aHJlYWRlZF9pc3IoaW50IGlycSwgdm9pZCAqaXJxX2lkKQogCWRlZmF1bHQ6CiAJCWRl dl9lcnIoJmwyYy0+cGRldi0+ZGV2LCAiVW5zdXBwb3J0ZWQgZGV2aWNlOiAlMDR4XG4iLAogCQkJ bDJjLT5wZGV2LT5kZXZpY2UpOwotCQlyZXR1cm4gSVJRX05PTkU7CisJCWdvdG8gZXJyX2ZyZWU7 CiAJfQogCiAJd2hpbGUgKENJUkNfQ05UKGwyYy0+cmluZ19oZWFkLCBsMmMtPnJpbmdfdGFpbCwK QEAgLTE5MDYsNyArMTkwNiw3IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCB0aHVuZGVyeF9sMmNfdGhy ZWFkZWRfaXNyKGludCBpcnEsIHZvaWQgKmlycV9pZCkKIAkJbDJjLT5yaW5nX3RhaWwrKzsKIAl9 CiAKLQlyZXR1cm4gSVJRX0hBTkRMRUQ7CisJcmV0ID0gSVJRX0hBTkRMRUQ7CiAKIGVycl9mcmVl OgogCWtmcmVlKG90aGVyKTsK