[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <50F62BEC.4060602@gmail.com>
Date: Tue, 15 Jan 2013 23:26:20 -0500
From: Woody Suwalski <terraluna977@...il.com>
To: Alan Stern <stern@...land.harvard.edu>
CC: Andreas Mohr <andi@...as.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
USB list <linux-usb@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists