Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b863467c authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

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

parents 7159e284 2911b040
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -3514,12 +3514,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;