Re: [PATCH V2] usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 15, 2021 at 05:37:44PM -0400, David Jeffery wrote:
> When MSI is used by the ehci-hcd driver, it can cause lost interrupts which
> results in EHCI only continuing to work due to a polling fallback. But the
> reliance of polling drastically reduces performance of any I/O through EHCI.
> 
> Interrupts are lost as the EHCI interrupt handler does not safely handle
> edge-triggered interrupts. It fails to ensure all interrupt status bits are
> cleared, which works with level-triggered interrupts but not the
> edge-triggered interrupts typical from using MSI.
> 
> To fix this problem, check if the driver may have raced with the hardware
> setting additional interrupt status bits and clear status until it is in a
> stable state.
> 
> Signed-off-by: David Jeffery <djeffery@xxxxxxxxxx>
> Tested-by: Laurence Oberman <loberman@xxxxxxxxxx>
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

> Fixes: 306c54d0edb6 usb: hcd: Try MSI interrupts on PCI devices

Improper format.

Add to your .gitconfig the following:

[alias]
	one = show -s --pretty='format:%h (\"%s\")'
	c = show -s --pretty='format:https://git.kernel.org/torvalds/c/%h'

-- 
With Best Regards,
Andy Shevchenko





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux