lkml.org 
[lkml]   [2013]   [Jan]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Linux 3.8-rc1 - another regression on USB :-(
Alan Stern wrote:
> On Sat, 12 Jan 2013, Andreas Mohr wrote:
>
>> There's of course the EHCI vs. UHCI(/OHCI) duality
>> (EHCI host controller responsible for high speed transfers,
>> the other for 1.1 full speed, both serving the same port connectors).
>> So if the coordination between the two is a problem,
>> you might end up with merely full speed on a 2.0 port.
>>
>> And with drivers builtin vs. module, the init sequence/timing
>> might possibly be affected - right?
>> Perhaps this got worsened by semi-recent driver init kernel changes?
>> (AFAIR the kernel was changed to init more things in parallel,
>> for faster bootup). So maybe that affected EHCI vs. UHCI coordination timing.
> Another important change is that the EHCI driver is now split into two
> modules. That can slow down loading and affect the timing.
>
> Alan Stern
>
My testcase is a live initramfs + squash root.
The boot logic is as stable as can be - unchanged since 2.6.2x kernels.
And it was working fine till 3.8-rc1.

The modules are insmoded in a fixed order:
usb-common, usbcore, xhci-hcd, ehci-hcd, uhci-hcd, ohci-hcd, usbhid,
usb_storage,...

If all USB is built as modules - I get read errors from USB drives when
accessing squash image, boot fails.
If usb-common and usbcore are built in, system seems to crawl with a
very slow USB, but boots. That could be caused by timing between hcd
modules.
If usb-common, usbcore and ehci-hcd are built-in, all works OK like
"before 3.8".
I was testing on machines without xhci or ohci hardware, so these
drivers probably are not playing any role.
I have retried initramfs with a 1s sleep between insmods to verify if it
is timing - still the same read errors - so the main issue is _not_ timing.
The read errors problem is 100% reproducible for me, the blocks where
read fails are not fixed - every (failed) boot errors start appearing in
a bit different location.
Just selecting a differently - configured kernel image makes the boot
work, so it is not a problem of squash image, USB drive, squashfs driver.

Scratching my head loudly,
Woody



\
 
 \ /
  Last update: 2013-01-16 06:21    [W:0.065 / U:0.364 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site