Re: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-30 Thread Peter Chen
On Wed, Jun 29, 2016 at 07:02:32PM -0700, Stephen Boyd wrote: > Quoting Peter Chen (2016-06-29 02:43:47) > > On Mon, Jun 27, 2016 at 06:18:27PM -0700, Stephen Boyd wrote: > > It introduces circular locking after applying it, otg_statemachine calls > > otg_leave_state, and otg_leave_state calls otg_

Re: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-29 Thread Peter Chen
On Wed, Jun 29, 2016 at 10:56:42AM +, Jun Li wrote: > > > } > > > > > > +static void otg_stop_hnp_polling(struct otg_fsm *fsm) { > > > + /* > > > + * The memory of host_req_flag should be allocated by > > > + * controller driver, otherwise, hnp polling is not started. > > > + */ > > > + if

RE: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-29 Thread Jun Li
; Jun Li ; Greg Kroah-Hartman > > Subject: Re: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used > > On Mon, Jun 27, 2016 at 06:18:27PM -0700, Stephen Boyd wrote: > > We setup the HNP polling worker, but we never stop it. The OTG state > > machine can go round

Re: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-29 Thread Peter Chen
On Mon, Jun 27, 2016 at 06:18:27PM -0700, Stephen Boyd wrote: > We setup the HNP polling worker, but we never stop it. The OTG > state machine can go round and round and keep reinitializing the > worker even while it's actively running. That's bad, and debug > objects catches it. Fix this by cancel

RE: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-27 Thread Jun Li
Greg Kroah-Hartman > > Subject: [PATCH] usb: otg-fsm: Cancel HNP polling work when not used > > We setup the HNP polling worker, but we never stop it. The OTG state > machine can go round and round and keep reinitializing the worker even > while it's actively running. That's ba

[PATCH] usb: otg-fsm: Cancel HNP polling work when not used

2016-06-27 Thread Stephen Boyd
We setup the HNP polling worker, but we never stop it. The OTG state machine can go round and round and keep reinitializing the worker even while it's actively running. That's bad, and debug objects catches it. Fix this by canceling the work when we leave the A_HOST or B_HOST states. [otg_set_stat