From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Date: Mon, 3 Sep 2012 10:09:53 +0000 (+0800)
Subject: parport: fix possible memory leak in parport_gsc_probe_port()
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=9986ffd9032a103df54fa4ed85f8f83f6b215194;p=linux.git

parport: fix possible memory leak in parport_gsc_probe_port()

ops has been allocated in this function and should be freed
before leaving from the error handling cases.

spatch with a semantic match is used to found this problem.
(http://coccinelle.lip6.fr/)

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---

diff --git a/drivers/parport/parport_gsc.c b/drivers/parport/parport_gsc.c
index 5d6de380e42ba..352f96180bc71 100644
--- a/drivers/parport/parport_gsc.c
+++ b/drivers/parport/parport_gsc.c
@@ -271,6 +271,7 @@ struct parport *__devinit parport_gsc_probe_port (unsigned long base,
 	if (!parport_SPP_supported (p)) {
 		/* No port. */
 		kfree (priv);
+		kfree(ops);
 		return NULL;
 	}
 	parport_PS2_supported (p);