Re: [RFC PATCH] usb: core: defer leaf-device resume off the S3 critical path
Marco Crivellari <[email protected]> Wed, 5 Aug 2026 12:24:11 +0200
| Newsgroups | org.kernel.vger.linux-usb,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CAAofZF6gAzJUKG7M2s+rJn4X5rQp-mKsftkhh=uvVnnY_498AA@mail.gmail.com> |
Hello, On Wed, Aug 5, 2026 at 11:37 AM Hongyu Xie <[email protected]> wrote: > [...] > @@ -1643,11 +1754,22 @@ int usb_resume_complete(struct device *dev) > { > struct usb_device *udev = to_usb_device(dev); > > + if (udev->state == USB_STATE_NOTATTACHED) > + return 0; > + > + /* Queue the real port reset after dpm_complete, once every hub in > + * the tree has finished resume and downstream ports are settled. > + */ > + if (udev->defer_resume_pending) { > + udev->defer_resume_pending = 0; > + queue_work(system_unbound_wq, &udev->defer_resume_work); > + return 0; > + } > + Please note that `system_unbound_wq` is the old unbound Workqueue. You should use the newer, `system_dfl_wq`. Thanks! -- Marco Crivellari SUSE Labs