Re: [PATCH 1/2] tpm, tpm_tis: Handle interrupt storm

Lino Sanfilippo
2023-05-23T10:41:35Z

Hi,

On 23.05.23 11:14, Péter Ujfalusi wrote:

>>
>>>> rc = tpm_tis_write32(priv, TPM_INT_STATUS(priv->locality), interrupt);
>>>> tpm_tis_relinquish_locality(chip, 0);
>>>> if (rc < 0)
>>>> - return IRQ_NONE;
>>>> + goto unhandled;
>>>
>>> This is more like an error than just unhandled IRQ. Yes, it was ignored,
>>> probably because it is common?
>>
>> The interrupt may be shared and then it's not an error.
>
> but this is tpm_tis_write32() failing, no? If it is shared interrupt and
> we return IRQ_HANDLED unconditionally then I think the core will think
> that the interrupt was for this device and it was handled.
>

At this point we already know the interrupt was for our device. Otherwise we would
have already bailed out at

if (interrupt == 0)

Regards,
Lino

> --
> Péter