mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-10-28 12:53:14 +01:00
usb: sl811-hcd: disable controller wakeup on remove
sl811h_probe() enables the HCD controller device as a wakeup source after
usb_add_hcd() succeeds, but sl811h_remove() removes the HCD and releases
the driver resources without disabling that wakeup source.
Disable controller wakeup after usb_remove_hcd() and before usb_put_hcd()
so the wakeup source object is detached while the controller device pointer
is still available.
This issue was identified during our ongoing static-analysis research while
reviewing kernel code.
Fixes: 3c9740a117 ("usb: hcd: move controller wakeup setting initialization to individual driver")
Cc: stable <[email protected]>
Co-developed-by: Ijae Kim <[email protected]>
Signed-off-by: Ijae Kim <[email protected]>
Signed-off-by: Myeonghun Pak <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
1 parent
0ef7cc27da
commit
4e8ba83ac4
1 file changed
+1
@@ -1591,6 +1591,7 @@ sl811h_remove(struct platform_device *dev)
|
||||
|
||||
remove_debug_file(sl811);
|
||||
usb_remove_hcd(hcd);
|
||||
device_wakeup_disable(hcd->self.controller);
|
||||
|
||||
/* some platforms may use IORESOURCE_IO */
|
||||
res = platform_get_resource(dev, IORESOURCE_MEM, 1);
|
||||
|
||||
Reference in new issue
Block a user