Re: Kernelpanic on eeePC and MSI Wind (both using rt2800pci) withLinux 3.x

From: David Miller
Date: Tue Nov 22 2011 - 23:21:20 EST


From: Robert Hancock <hancockrwd@xxxxxxxxx>
Date: Tue, 22 Nov 2011 19:49:33 -0600

> On 11/22/2011 02:55 PM, David Miller wrote:
>> From: Michael Basse<michael@xxxxxxxxxxxxx>
>> Date: Tue, 22 Nov 2011 21:49:49 +0100
>>
>>> Hi,
>>>
>>> just for the record. This thread is hopefully providing a patch
>>>
>>> http://thread.gmane.org/gmane.linux.kernel.wireless.general/80759
>>>
>>> already built the kernel and doing some testing now.
>>
>> That patch is wrong, it returns IRQ_HANDLED when it can't tell if the
>> chip generated the interrupt or not.
>>
>> Therefore, if any other device shares that interrupt line it's
>> interrupts can be lost when this case triggers.
>>
>> This has to be fixed another way.
>
> Huh? IRQ_HANDLED is the "safe" return value when you don't know for
> sure whether your device generated the interrupt. Returning that
> doesn't prevent other handlers on the same IRQ from being called.

But it prevents being able to notice spurious interrupts from
other devices sharing the IRQ.

You absolutely must return an accurate return value here for correct
operation, you simply cannot "guess".
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/