Message ID | 20210416031747.28504-1-zhuguangqing83@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Input: goodix - Fix missing IRQF_ONESHOT as only threaded handler | expand |
On Fri, 16 Apr 2021 at 05:18, <zhuguangqing83@gmail.com> wrote: > > From: Guangqing Zhu <zhuguangqing83@gmail.com> > > Coccinelle noticed: > drivers/input/touchscreen/goodix.c:497:8-33: ERROR: Threaded IRQ with no > primary handler requested without IRQF_ONESHOT > > Signed-off-by: Guangqing Zhu <zhuguangqing83@gmail.com> > --- > drivers/input/touchscreen/goodix.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) Did you test it? There are several patches like this all over the tree so it looks like "let's fix everything from Coccinelle" because you ignored at least in some of the cases that the handler is not the default primary one. I am not saying that the change is bad, but rather it looks automated and needs more consideration. Best regards, Krzysztof Best regards, Krzysztof
On Fri, Apr 16, 2021 at 10:47:11AM +0200, Krzysztof Kozlowski wrote: > On Fri, 16 Apr 2021 at 05:18, <zhuguangqing83@gmail.com> wrote: > > > > From: Guangqing Zhu <zhuguangqing83@gmail.com> > > > > Coccinelle noticed: > > drivers/input/touchscreen/goodix.c:497:8-33: ERROR: Threaded IRQ with no > > primary handler requested without IRQF_ONESHOT > > > > Signed-off-by: Guangqing Zhu <zhuguangqing83@gmail.com> > > --- > > drivers/input/touchscreen/goodix.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > Did you test it? There are several patches like this all over the tree > so it looks like "let's fix everything from Coccinelle" because you > ignored at least in some of the cases that the handler is not the > default primary one. I am not saying that the change is bad, but > rather it looks automated and needs more consideration. At least the subject is bad because IRQF_ONESHOT is not missing, it is simply set up elsewhere, the patch itself is a noop. I do not see a reason to take this. Thanks.
diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c index c682b028f0a2..725d01e01328 100644 --- a/drivers/input/touchscreen/goodix.c +++ b/drivers/input/touchscreen/goodix.c @@ -496,7 +496,8 @@ static int goodix_request_irq(struct goodix_ts_data *ts) { return devm_request_threaded_irq(&ts->client->dev, ts->client->irq, NULL, goodix_ts_irq_handler, - ts->irq_flags, ts->client->name, ts); + ts->irq_flags | IRQF_ONESHOT, + ts->client->name, ts); } static int goodix_check_cfg_8(struct goodix_ts_data *ts, const u8 *cfg, int len) @@ -1158,7 +1159,7 @@ static int goodix_configure_dev(struct goodix_ts_data *ts) return error; } - ts->irq_flags = goodix_irq_flags[ts->int_trigger_type] | IRQF_ONESHOT; + ts->irq_flags = goodix_irq_flags[ts->int_trigger_type]; error = goodix_request_irq(ts); if (error) { dev_err(&ts->client->dev, "request IRQ failed: %d\n", error);