[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <70893.1248739158@turing-police.cc.vt.edu>
Date: Mon, 27 Jul 2009 19:59:18 -0400
From: Valdis.Kletnieks@...edu
To: Alan Stern <stern@...land.harvard.edu>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
David Brownell <dbrownell@...rs.sourceforge.net>,
Jiri Kosina <jkosina@...e.cz>,
Greg Kroah-Hartman <gregkh@...e.de>,
linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org
Subject: Re: 31-rc3-mmotm0716 - dead USB trackball mouse kills entire system
On Fri, 24 Jul 2009 10:29:51 EDT, Alan Stern said:
> You're talking about messages like this:
>
> > Jul 23 11:10:29 turing-police kernel: [ 571.965568] drivers/hid/usbhid/hid-core.c: can't reset device, 0000:00:1d.7-8.3/input0, status -71
>
> Those messages are produced by the following statement in
> drivers/hid/usbhid/hid-core.c:hid_reset():
>
> err_hid("can't reset device, %s-%s/input%d, status %d",
> hid_to_usb_dev(hid)->bus->bus_name,
> hid_to_usb_dev(hid)->devpath,
> usbhid->ifnum, rc);
>
> I don't know how long that subroutine and in particular that line have
> been present, but it has been quite a while. Certainly since 2.6.20.
That code may have been there for a long time, but apparently something
*else* in the USB/HID pile of code changed, that we're now calling hid_reset()
where we didn't used to before, or hid_reset() never reached that err_hid()
call before, or something.
> > > This is a bug. For more discussion see this thread:
> > >
> > > http://marc.info/?t=124807676700001&r=1&w=2
> > >
> > > You should try the patch given there.
> >
> > OK, will do that, see if it improves things...
>
> Let me know what happens.
Confirming - the patch in that thread prevents the system lockup I was
seeing.
So it looks like hid_reset() getting more chatty sometime in the last 2 weeks
was a red herring, and one I can't actually complain about - it was quite
legitimately whinging about not being able to reset a device that was in fact
dead in the water at the time. Given that, and a working patch for ehci-hcd.c,
I'm having a hard time finding the enthusiasm to track down what exactly
changed in hid-core.c. :)
The change in hid-core.c behavior just had the bad luck to land in -mmotm at
the exact same time the bug in ehci-hcd.c landed. So we had two user-visible
behavior changes in the same area of code at the same time. Hilarity ensues. :)
Thanks for pointing me at the actual fix. ;)
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists