Re: usb_hcd_poll_rh_status (rh_timer_func) timer

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

 



On Thu, 24 Sep 2009, Mikael Pettersson wrote:

> I'm trying to tune a tickless 2.6.31 kernel for an ARM box
> (arch/arm/mach-iop32x/n2100.c). Looking at /proc/timer_stats
> I see that
> 
> usb_hcd_poll_rh_status (rh_timer_func)
> 
> is now the #1 cause of timeouts, which prevents the tickless
> kernel from extending the periods between timer interrupts.
> 
> The machine has VIA EHCI and UHCI controllers. The polling timer
> appears if UHCI_HCD is enabled; enabling only EHCI_HCD does not
> case the timer to appear.

What USB devices are on the UHCI buses?

> Is a polling timer really necessary? If it is, why? UHCI bug or
> kernel limitation/shortcut?

It is necessary if the the bus is not suspended.  This is a UHCI design 
limitation, not a bug and not a kernel limitation.

Even if the bus is suspended, the timer sometimes is necessary.  This 
is because of bugs in some UHCI implementations and bugs in some 
motherboard designs.  However these bugs are specific to Intel and 
Genesys Logic controllers and Asus motherboards, so they shouldn't 
affect you.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

  Powered by Linux