Re: [PATCH] HID: usbhid: get/put around clearing needs_remote_wakeup

From: Alan Stern
Date: Tue Nov 25 2014 - 10:24:30 EST


On Mon, 24 Nov 2014, Benson Leung wrote:

> Hi Alan,
>
>
> On Sat, Nov 22, 2014 at 7:55 AM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> > There is no USB wrapper for pm_runtime_idle calls, but one could be
> > added. Still, in the meantime can you check to see what happens if you
> > add
> >
> > pm_runtime_idle(&usbhid->intf->dev);
> >
> > in usbhid_close() just after needs_remote_wakeup is set to 0? You can
> > do the same thing in usbhid_stop() if you want.
>
> I tried using this in lieu of usb_autopm_get/put_interface:
>
> usbhid->intf->needs_remote_wakeup = 0;
> pm_runtime_idle(&usbhid->intf->dev);
> pm_runtime_idle(usbhid->intf->dev.parent);
>
> It did not work. I see the autosuspend_check() that was kicked off as
> a result of hid_hw_power, which falls into the "remote wakeup needed
> for autosuspend" branch, but I don't see another autosuspend_check()
> that picks up the updated value of needs_remote_wakeup.

Well, why not?

In order to work on the kernel effectively, you need the right
mind-set. Don't just tell people when something goes wrong -- figure
out why the problem occurred and propose a way to fix it.

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/