aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMarek Szyprowski <m.szyprowski@samsung.com>2025-02-20 13:03:14 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-02-20 13:29:37 +0100
commitc783e1258f29c5caac9eea0aea6b172870f1baf8 (patch)
tree1ec1806f48aff1ca2859a9f7c08485a60c3b268b
parentusb: typec: ucsi: increase timeout for PPM reset operations (diff)
downloadwireguard-linux-c783e1258f29c5caac9eea0aea6b172870f1baf8.tar.xz
wireguard-linux-c783e1258f29c5caac9eea0aea6b172870f1baf8.zip
usb: gadget: Fix setting self-powered state on suspend
cdev->config might be NULL, so check it before dereferencing. CC: stable <stable@kernel.org> Fixes: 40e89ff5750f ("usb: gadget: Set self-powered based on MaxPower and bmAttributes") Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Link: https://lore.kernel.org/r/20250220120314.3614330-1-m.szyprowski@samsung.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/gadget/composite.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index 1fb28bbf6c45..4bcf73bae761 100644
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -2616,7 +2616,8 @@ void composite_suspend(struct usb_gadget *gadget)
cdev->suspended = 1;
- if (cdev->config->bmAttributes & USB_CONFIG_ATT_SELFPOWER)
+ if (cdev->config &&
+ cdev->config->bmAttributes & USB_CONFIG_ATT_SELFPOWER)
usb_gadget_set_selfpowered(gadget);
usb_gadget_vbus_draw(gadget, 2);