Re: broken access to a USB HID device after suspend

From: Alan Stern
Date: Wed Mar 12 2008 - 17:45:43 EST


On Wed, 12 Mar 2008, Jiri Kosina wrote:

> On Wed, 12 Mar 2008, Tino Keitel wrote:
>
> > I use a tool called hidmon to control the parameters of my LCD in shell
> > scripts. I just had the case where this tool didn't work after suspend
> > to RAM. I just got this error message:
> >
> > hid_force_open failed with return code 13
> >
> > The kernel log contains lines like this:
> >
> > usb 1-1.3: usbfs: USBDEVFS_CONTROL failed cmd hidmon rqt 129 rq 6 len 9 ret -110
> >
> > Unplugging and replugging the USB cable of the LCD didn't work.
> > However, after a further suspend/resume cycle it works.
> >
> > This is Linux 2.6.25-rc5. The behaviour is not repoducible, though.
> > However, I just mention it for the case that this might ring a bell
> > somewhere.
>
> This in fact looks like a problem with usbdevfs and/or libusb library, not
> the in-kernel HID drvier.
>
> Did this work before? In 2.6.24? 2.6.23? Alan (added to CC, as well as USB
> devel mailinglist) has been doing some changes to usbdevfs to make it
> suspend-aware, if I recall correctly.

No, usbfs hasn't undergone any significant changes recently.

Tino, it would help to see a kernel log showing what happened during
the suspend, resume, and failure of hidmon. It would help even more if
you test under a kernel with CONFIG_USB_DEBUG enabled.

Even if you can't reproduce the problem, do you have the complete
kernel log from before?

Is it possible that this is really a problem with the LCD device, not
with the kernel? I ask because if the device was working properly then
unplugging and replugging the USB cable should do a complete reset.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/