From d1d2f83f850e7d57a220fa2c7ce7f0bd5ed6c16d Mon Sep 17 00:00:00 2001 From: Wei Yongjun Date: Wed, 24 Apr 2013 10:40:00 +0800 Subject: [PATCH] staging: cptm1217: don't call input_free_device() after input_unregister_device() input_free_device() should only be used if input_register_device() was not called yet or if it failed. Once device was unregistered use input_unregister_device() and memory will be freed once last reference to the device is dropped. Signed-off-by: Wei Yongjun Signed-off-by: Greg Kroah-Hartman --- drivers/staging/cptm1217/clearpad_tm1217.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/staging/cptm1217/clearpad_tm1217.c b/drivers/staging/cptm1217/clearpad_tm1217.c index e96eee3..42a5f5c 100644 --- a/drivers/staging/cptm1217/clearpad_tm1217.c +++ b/drivers/staging/cptm1217/clearpad_tm1217.c @@ -547,10 +547,8 @@ fail_gpio: fail: /* Clean up before returning failure */ for (i = 0; i < TOUCH_SUPPORTED; i++) { - if (ts->cp_input_info[i].input) { + if (ts->cp_input_info[i].input) input_unregister_device(ts->cp_input_info[i].input); - input_free_device(ts->cp_input_info[i].input); - } } kfree(ts); return retval; -- 2.7.4