Merge "usb: dwc3: Use an ordered workqueue for sm_work"

This commit is contained in:
qctecmdr 2020-05-15 16:20:24 -07:00 • committed by Gerrit - the friendly Code Review server
commit f830a6356e

View file

@ -3990,12 +3990,13 @@ static int dwc3_msm_probe(struct platform_device *pdev)
}
/*
* Create freezable workqueue for sm_work so that it gets scheduled only
* after pm_resume has happened completely. This helps in avoiding race
* conditions between xhci_plat_resume and xhci_runtime_resume; and also
* between hcd disconnect and xhci_resume.
* Create an ordered freezable workqueue for sm_work so that it gets
* scheduled only after pm_resume has happened completely. This helps
* in avoiding race conditions between xhci_plat_resume and
* xhci_runtime_resume and also between hcd disconnect and xhci_resume.
*/
mdwc->sm_usb_wq = create_freezable_workqueue("k_sm_usb");
mdwc->sm_usb_wq = alloc_ordered_workqueue("k_sm_usb",
WQ_FREEZABLE | WQ_MEM_RECLAIM);
if (!mdwc->sm_usb_wq) {
destroy_workqueue(mdwc->dwc3_wq);
return -ENOMEM;