Re: [PATCH v2 2/3] usb: cdns3: gadget: own the lock wrongly at the suspend routine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 20-10-27 11:26:56, Felipe Balbi wrote:
> Peter Chen <peter.chen@xxxxxxx> writes:
> 
> > When the system goes to suspend, if the controller is at device mode with
> > cable connecting to host, the call stack is: cdns3_suspend->
> > cdns3_gadget_suspend -> cdns3_disconnect_gadget, after cdns3_disconnect_gadget
> > is called, it owns lock wrongly, it causes the system being deadlock after
> > resume due to at cdns3_device_thread_irq_handler, it tries to get the lock,
> > but can't get it forever.
> >
> > To fix it, we delete the unlock-lock operations at cdns3_disconnect_gadget,
> > and do it at the caller.
> >
> > Fixes: b1234e3b3b26 ("usb: cdns3: add runtime PM support")
> > Signed-off-by: Peter Chen <peter.chen@xxxxxxx>
> 
> comment from previous thread is still valid. Missing __releases() and
> __acquires() annotation.
> 

Thanks, will add __must_hold sparse checker

-- 

Thanks,
Peter Chen



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux