On 18.02.2016 17:46, Valentin Rothberg wrote: > > > Hi Krzysztof, > > On 2/18/16 9:13 AM, Krzysztof Kozlowski wrote: >> On 18.02.2016 17:06, Valentin Rothberg wrote: >>> From: kbuild test robot <[email protected]> >>> >>> Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests") >>> threaded IRQs without a primary handler need to be requested with >>> IRQF_ONESHOT, otherwise the request will fail. >>> >>> So pass the IRQF_ONESHOT flag in this case. >>> >>> Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci >>> >>> CC: Laxman Dewangan <[email protected]> >>> Signed-off-by: Fengguang Wu <[email protected]> >>> Signed-off-by: Valentin Rothberg <[email protected]> >>> --- >>> drivers/rtc/rtc-max77686.c | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >> >> Nack, because: >> 1. AFAIR this is a false positive. > > Looking at kernel/irq/manage.c +1250 such requests will be rejected > unconditionally when the primary handler is NULL, except when the chip > is marked to be oneshot safe. > > Is there another semantic that I am not aware of? In case the script > produces false positives, I will change it immediately.
The handler is "irq_nested_primary_handler". >> 2. Was it tested? Was it reproduced? Was the bug actually spotted or >> just coccicheck pointed this and you assumed that "request will fail"? >> >> Coccicheck is a great tool... but not necessarily for pointing run-time >> bugs. > > I did not test it. To me the issue rather seems seems like something > where Coccinelle is really good at, static analysis. Yet, this is somehow subtle (device inter-dependencies) so it falls out of static into runtime (I mean runtime analysis is needed). Best regards, Krzysztof

