* [PATCH] Input: cyttsp4 - fix potential NULL pointer dereference in cyttsp4_watchdog_timer()
@ 2013-08-26 4:55 Wei Yongjun
2013-08-26 5:26 ` Dmitry Torokhov
0 siblings, 1 reply; 3+ messages in thread
From: Wei Yongjun @ 2013-08-26 4:55 UTC (permalink / raw)
To: javier, dmitry.torokhov, fery; +Cc: yongjun_wei, linux-input
From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
The dereference should be moved below the NULL test.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
---
drivers/input/touchscreen/cyttsp4_core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/input/touchscreen/cyttsp4_core.c b/drivers/input/touchscreen/cyttsp4_core.c
index 963da05..ffa8e35 100644
--- a/drivers/input/touchscreen/cyttsp4_core.c
+++ b/drivers/input/touchscreen/cyttsp4_core.c
@@ -1244,11 +1244,11 @@ static void cyttsp4_watchdog_timer(unsigned long handle)
{
struct cyttsp4 *cd = (struct cyttsp4 *)handle;
- dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
-
if (!cd)
return;
+ dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
+
if (!work_pending(&cd->watchdog_work))
schedule_work(&cd->watchdog_work);
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] Input: cyttsp4 - fix potential NULL pointer dereference in cyttsp4_watchdog_timer()
2013-08-26 4:55 [PATCH] Input: cyttsp4 - fix potential NULL pointer dereference in cyttsp4_watchdog_timer() Wei Yongjun
@ 2013-08-26 5:26 ` Dmitry Torokhov
2013-08-26 5:54 ` Ferruh Yigit
0 siblings, 1 reply; 3+ messages in thread
From: Dmitry Torokhov @ 2013-08-26 5:26 UTC (permalink / raw)
To: Wei Yongjun, javier, fery; +Cc: yongjun_wei, linux-input
Wei Yongjun <weiyj.lk@gmail.com> wrote:
>From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
>
>The dereference should be moved below the NULL test.
>
>Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
>---
> drivers/input/touchscreen/cyttsp4_core.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/input/touchscreen/cyttsp4_core.c
>b/drivers/input/touchscreen/cyttsp4_core.c
>index 963da05..ffa8e35 100644
>--- a/drivers/input/touchscreen/cyttsp4_core.c
>+++ b/drivers/input/touchscreen/cyttsp4_core.c
>@@ -1244,11 +1244,11 @@ static void cyttsp4_watchdog_timer(unsigned
>long handle)
> {
> struct cyttsp4 *cd = (struct cyttsp4 *)handle;
>
>- dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
>-
> if (!cd)
> return;
>
Actually this test does not make any sense and we should rather remove it.
>+ dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
>+
> if (!work_pending(&cd->watchdog_work))
> schedule_work(&cd->watchdog_work);
>
Hi Wei,
Thanks.
--
Dmitry
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Input: cyttsp4 - fix potential NULL pointer dereference in cyttsp4_watchdog_timer()
2013-08-26 5:26 ` Dmitry Torokhov
@ 2013-08-26 5:54 ` Ferruh Yigit
0 siblings, 0 replies; 3+ messages in thread
From: Ferruh Yigit @ 2013-08-26 5:54 UTC (permalink / raw)
To: Dmitry Torokhov; +Cc: Wei Yongjun, javier, yongjun_wei, linux-input
On 08/26/2013 08:26 AM, Dmitry Torokhov wrote:
> Wei Yongjun <weiyj.lk@gmail.com> wrote:
>> From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
>>
>> The dereference should be moved below the NULL test.
>>
>> Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
>> ---
>> drivers/input/touchscreen/cyttsp4_core.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/input/touchscreen/cyttsp4_core.c
>> b/drivers/input/touchscreen/cyttsp4_core.c
>> index 963da05..ffa8e35 100644
>> --- a/drivers/input/touchscreen/cyttsp4_core.c
>> +++ b/drivers/input/touchscreen/cyttsp4_core.c
>> @@ -1244,11 +1244,11 @@ static void cyttsp4_watchdog_timer(unsigned
>> long handle)
>> {
>> struct cyttsp4 *cd = (struct cyttsp4 *)handle;
>>
>> - dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
>> -
>> if (!cd)
>> return;
>>
> Actually this test does not make any sense and we should rather remove it.
Agreed on removing it. For cases "cd" can be NULL/invalid, watchdog
already stopped:
1- in probe(), when timer set, cd allocated and NULL check done.
2- in probe(), in error path after timer set, watchdog stopped before
"cd" freed
3- in cyttsp4_remove(), watchdog stopped before "cd" freed
>
>> + dev_vdbg(cd->dev, "%s: Watchdog timer triggered\n", __func__);
>> +
>> if (!work_pending(&cd->watchdog_work))
>> schedule_work(&cd->watchdog_work);
>>
> Hi Wei,
> Thanks.
>
This message and any attachments may contain Cypress (or its subsidiaries) confidential information. If it has been received in error, please advise the sender and immediately delete this message.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-08-26 6:00 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-26 4:55 [PATCH] Input: cyttsp4 - fix potential NULL pointer dereference in cyttsp4_watchdog_timer() Wei Yongjun
2013-08-26 5:26 ` Dmitry Torokhov
2013-08-26 5:54 ` Ferruh Yigit
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).