On Sat, 31 May 2014, Pantelis Koukousoulas wrote: > dummy_hcd uses jiffies and seems to assume that HZ=1000 and no > tickless behavior. This makes its emulation not very faithful, > especially for typical distro desktop kernels (HZ=250, tickless > which means that e.g., when dummy_hcd asks for a delay of 1ms > in reality it can get 4ms or more). > > For some devices, this might manifest as unexpectedly low performance > (e.g., 2-4MB/s for a tcm_gadget_usb backed by a ramdisk) compared to > real hardware, others might even break if they are more sensitive to > timing. > > This patch ports dummy_hcd to use hrtimers instead, which fixes these > problems and hopefully allows both for more gadgets to work with > dummy_hcd and for a better emulation user experience overall, > especially in typical kernel configurations. > > For storage this brings performance to acceptable levels > (around 25MB/s for BOT, 100MB/s for UAS) improving the > user experience when testing, for other devices it might > mean that now they will work properly with dummy_hcd when > before they didn't. > > Implementation uses the tasklet_hrtimer framework. This means > dummy_timer callback is executed in softirq context (as it was > with wheel timers) which keeps required changes to a minimum. Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> -- 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