Re: [PATCH RESEND] xhci: Keep interrupt disabled in initialization until host is running.

Prashanth K
2023-10-11T06:25:13Z

On 10-10-23 04:48 pm, Greg Kroah-Hartman wrote:
> On Tue, Oct 10, 2023 at 02:34:44PM +0530, Prashanth K wrote:
>>
>>
>> On 09-10-23 06:22 pm, Greg Kroah-Hartman wrote:
>>> On Mon, Oct 09, 2023 at 04:09:26PM +0530, Prashanth K wrote:
>>>> From: Hongyu Xie <xy521521@gmail.com>
>>>>
>>>> [ Upstream commit a808925075fb750804a60ff0710614466c396db4 ]
>>>>
>>>> irq is disabled in xhci_quiesce(called by xhci_halt, with bit:2 cleared
>>>> in USBCMD register), but xhci_run(called by usb_add_hcd) re-enable it.
>>>> It's possible that you will receive thousands of interrupt requests
>>>> after initialization for 2.0 roothub. And you will get a lot of
>>>> warning like, "xHCI dying, ignoring interrupt. Shouldn't IRQs be
>>>> disabled?". This amount of interrupt requests will cause the entire
>>>> system to freeze.
>>>> This problem was first found on a device with ASM2142 host controller
>>>> on it.
>>>>
>>>> [tidy up old code while moving it, reword header -Mathias]
>>>>
>>>> Cc: stable@kernel.org
>>>> Signed-off-by: Hongyu Xie <xiehongyu1@kylinos.cn>
>>>> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
>>>> Link: https://lore.kernel.org/r/20220623111945.1557702-2-mathias.nyman@linux.intel.com
>>>> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>>>> Cc: <stable@vger.kernel.org> # 5.15
>>>> Signed-off-by: Prashanth K <quic_prashk@quicinc.com>
>>>> ---
>>>
>>> Any specific reason you missed adding the extra blank line in this
>>> version of the backport that the original added? That is going to cause
>>> problems in the future if other patches are added on top of this that
>>> would be expecting it because it is that way in Linus's tree.
>>>
>>
>> Thanks for pointing out, i removed it while resolving some merge conflicts.
>> Will add it back in next version.
>>
>>> And why is this only relevant for 5.15.y?
>>
>> I'm not really sure why this was only ported from 5.19 onwards and not
>> present in older kernels (could be because of dependencies/conflicts).
>>
>> But anyways im backporting it to 5.15 since an irq storm was seen on a qcom
>> SOC working on 5.15, and this patch is helping solve it.
>>
>> Should I change the CC to just stable kernel (without mentioning kernel
>> version) ?
>> something like this -- Cc: <stable@vger.kernel.org>
>
> No, let us know what kernel version this is to be applied to so we know,
> if you only think this is relevant for 5.15.y as you have tested it
> there, that's fine, I just wanted to be sure.

We tested it on 5.15 for over 20 hours and didn't see any issue. Will
send a new patch after adding the newline.

Thanks,
Prashanth K