lkml.org 
[lkml]   [2020]   [Mar]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 4/5] pci: handled return value of platform_get_irq correctly
Date
Bjorn,

Bjorn Helgaas <helgaas@kernel.org> writes:
> On Thu, Mar 12, 2020 at 10:53:06AM +0100, Marc Gonzalez wrote:
>> Last time around, my understanding was that, going forward,
>> the best solution was:
>>
>> virq = platform_get_irq(...)
>> if (virq <= 0)
>> return virq ? : -ENODEV;
>>
>> i.e. map 0 to -ENODEV, pass other errors as-is, remove the dev_err
>>
>> @Bjorn/Lorenzo did you have a change of heart?
>
> Yes. In 10006651 (Oct 20, 2017), I thought:
>
> irq = platform_get_irq(pdev, 0);
> if (irq <= 0)
> return -ENODEV;
>
> was fine. In 11066455 (Aug 7, 2019), I said I thought I was wrong and
> that:
>
> platform_get_irq() is a generic interface and we have to be able to
> interpret return values consistently. The overwhelming consensus
> among platform_get_irq() callers is to treat "irq < 0" as an error,
> and I think we should follow suit.
> ...
> I think the best pattern is:
>
> irq = platform_get_irq(pdev, i);
> if (irq < 0)
> return irq;

Careful. 0 is not a valid interrupt.

Thanks,

tglx

\
 
 \ /
  Last update: 2020-03-13 22:07    [W:0.078 / U:8.528 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site