Bug 13700
Summary: | usb error flood in dmesg, makes kde use plenty of cpu - bisected | ||
---|---|---|---|
Product: | Drivers | Reporter: | jouni susiluoto (jouni.susiluoto) |
Component: | USB | Assignee: | Daniel Mack (daniel) |
Status: | CLOSED CODE_FIX | ||
Severity: | normal | CC: | daniel, ozan, rjw, stern |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.30-rc1 and later | Subsystem: | |
Regression: | Yes | Bisected commit-id: | |
Bug Depends on: | |||
Bug Blocks: | 13070 | ||
Attachments: |
lsusb -v from nonworking system
lsusb -v from 2.6.29.5 .config of 2.6.30.1 kernel that does not work usbmon output with a good kernel usbmon output with a bad kernel |
Description
jouni susiluoto
2009-07-03 21:13:31 UTC
Created attachment 22201 [details]
lsusb -v from 2.6.29.5
Created attachment 22203 [details]
.config of 2.6.30.1 kernel that does not work
Tested also with 2.6.31-rc1-git3, that does not work either.
(switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). It's a post-2.6.30 regression. On Fri, 3 Jul 2009 21:13:32 GMT bugzilla-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=13700 > > Summary: usb error flood in dmesg, makes kde use plenty of cpu > - bisected > Product: Drivers > Version: 2.5 > Kernel Version: 2.6.30-rc1 and later > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: normal > Priority: P1 > Component: USB > AssignedTo: greg@kroah.com > ReportedBy: jouni.susiluoto@helsinki.fi > Regression: Yes > > > Created an attachment (id=22197) > --> (http://bugzilla.kernel.org/attachment.cgi?id=22197) > lsusb -v from nonworking system > > With all kernels after (copied from git-bisect...) > > > 54530bded6ecf22d683423b66fc3cd6dddb249aa is first bad commit > commit 54530bded6ecf22d683423b66fc3cd6dddb249aa > Author: Takashi Iwai <tiwai@suse.de> > Date: Thu Feb 5 15:55:18 2009 +0100 > > ALSA: usb - Add missing KERN_* prefix to printk > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > :040000 040000 c9808b346d4581fd1c6df76a7a00ad29853a6250 > 5ab0b206b85c5b54c6a5809b4d14c1a86778442b M sound I think the bisect went wrong :( That patch doesn't really do anything. > > I get the following errors in dmesg: > > > [ 9009.206070] usb 5-2: new low speed USB device using uhci_hcd and address > 101 > [ 9009.365159] usb 5-2: string descriptor 0 read error: -32 > [ 9009.387159] usb 5-2: New USB device found, idVendor=043e, idProduct=9802 > [ 9009.387167] usb 5-2: New USB device strings: Mfr=0, Product=1, > SerialNumber=0 > [ 9009.387314] usb 5-2: configuration #1 chosen from 1 choice > [ 9009.395821] usb 5-2: can't set config #1, error -71 > [ 9009.395931] usb 5-2: USB disconnect, address 101 > [ 9009.956068] usb 5-2: new low speed USB device using uhci_hcd and address > 102 > [ 9010.115158] usb 5-2: string descriptor 0 read error: -32 > [ 9010.134159] usb 5-2: New USB device found, idVendor=043e, idProduct=9802 > [ 9010.134166] usb 5-2: New USB device strings: Mfr=0, Product=1, > SerialNumber=0 > [ 9010.134322] usb 5-2: configuration #1 chosen from 1 choice > [ 9010.138154] usb 5-2: can't set config #1, error -71 > [ 9010.138273] usb 5-2: USB disconnect, address 102 > > > With a working kernel, like 2.6.29.5, the the usb section 5-2 reads: > > > [ 6.878042] usb 5-2: new low speed USB device using uhci_hcd and address 2 > [ 7.037499] usb 5-2: string descriptor 0 read error: -32 > [ 7.037546] usb 5-2: New USB device found, idVendor=043e, idProduct=9802 > [ 7.037549] usb 5-2: New USB device strings: Mfr=0, Product=1, > SerialNumber=0 > [ 7.040584] usb 5-2: configuration #1 chosen from 1 choice > > lsusb for 2.6.29.5 is: > > > Bus 005 Device 002: ID 043e:9802 LG Electronics USA, Inc. > Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > > and for later kernels, it is the same, but the first line is completely > missing. > > Attached are lsusb -v from both nonworking and working systems, and .config > of > the latest tested nonworking kernel version, 2.6.31-rc1-git3. At Fri, 3 Jul 2009 14:33:25 -0700,
Andrew Morton wrote:
>
> >
> > With all kernels after (copied from git-bisect...)
> >
> >
> > 54530bded6ecf22d683423b66fc3cd6dddb249aa is first bad commit
> > commit 54530bded6ecf22d683423b66fc3cd6dddb249aa
> > Author: Takashi Iwai <tiwai@suse.de>
> > Date: Thu Feb 5 15:55:18 2009 +0100
> >
> > ALSA: usb - Add missing KERN_* prefix to printk
> >
> > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> >
> > :040000 040000 c9808b346d4581fd1c6df76a7a00ad29853a6250
> > 5ab0b206b85c5b54c6a5809b4d14c1a86778442b M sound
>
> I think the bisect went wrong :( That patch doesn't really do anything.
Indeed.
Looking at the kernel messages, it seems relevant only with the usb stack.
Maybe bisecting with limited path (drivers/usb) would be easier.
Takashi
Yes, you are right, the bisection was all wrong. The multiple choice questions good/bad are tricky... Bisected it again, and double tested it, and the offending commit actually seems to be: b7af0bb26899bb47ae16fb41d2296111b0784a56 is first bad commit commit b7af0bb26899bb47ae16fb41d2296111b0784a56 Author: Daniel Mack <daniel@caiaq.de> Date: Fri Mar 20 19:58:57 2009 +0100 USB: allow malformed LANGID descriptors When an USB hardware does not provide a valid LANGID, fall back to value zero which is still a reasonable default for most devices. Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> :040000 040000 4c5cd78df7c00d0242d37b7bc02ccf2aac725f43 b1d3f7826fe098fff77f06260e8ba9aa297ba514 M drivers The kernel at the previous commit 4c24b6d045a9d355c95ca4e6beb10ce2fd263390 does work fine with identical .config. I hope I got it right this time. If you need any additional info, just let me know. Apparently it was the culprit - doing git revert b7af0bb26899bb47ae16fb41d2296111b0784a56 with the current mainline git tree solves the problem. Jouni Use usbmon to capture the USB messages when the device is first plugged in. (See Documentation/usb/usbmon.txt for instructions.) In fact, do it twice: once with the vanilla kernel and once with the offending patch reverted. Attach the logs to this bug report and I'll look at them. well, lsusb shows $ lsusb Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 002: ID 043e:9802 LG Electronics USA, Inc. Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub even when there are no usb devices plugged into the usb ports at all (this is an LG LW75 laptop). This is the case with the kernels, that don't have the patch b7af0bb26899bb47ae16fb41d2296111b0784a56 (ie. the evil patch) applied. With the broken kernels, the errorflood is there also with no devices plugged in at all, and there is no trace of the LG Electronics USA, Inc. device in lsusb This laptop has 4 usb ports. I'll be away until next wednesday, so before that I'll not be able to help more. Jouni The LG Electronics device must be built into the laptop. Since you can't unplug it, you'll have to do this instead: rmmod ehci-hcd, then rmmod uhci-hcd. Then start usbmon, copying the 0u file. Then modprobe uhci-hcd. The final result will be good enough for our purposes. Created attachment 22288 [details]
usbmon output with a good kernel
Created attachment 22289 [details]
usbmon output with a bad kernel
Fix with commit to mainline 0cce2ed With the very same laptop, it was also an issue for 2.6.30.2. The bug is listed in the regression list reported from 2.6.30 but should be in the 2.6.29->2.6.30 one. Anyway, that would be nice to send the patch to stable@kernel for inclusion in the next 2.6.30 release. Thanks, Okay that was already CC'ed, ignore the previous one. On Monday 27 July 2009, Ozan Çağlayan wrote:
> Rafael J. Wysocki wrote On 26-07-2009 23:28:
> > This message has been generated automatically as a part of a report
> > of recent regressions.
> >
> > The following bug entry is on the current list of known regressions
> > from 2.6.30. Please verify if it still should be listed and let me know
> > (either way).
> >
> >
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=13700
> > Subject : usb error flood in dmesg, makes kde use plenty of cpu
> - bisected
> > Submitter : jouni susiluoto <jouni.susiluoto@helsinki.fi>
> > Date : 2009-07-03 21:13 (24 days old)
> >
> This is also an issue for 2.6.30 so it should have been listed in the
> other 2.6.29->2.6.30 list I think.
|