From ddc9bb706808468b2808ab9a32efc5f8dfb346c9 Mon Sep 17 00:00:00 2001 From: Ed Maste Date: Fri, 4 Oct 2024 11:49:53 -0400 Subject: [PATCH] usb: fix loop in usb_config_parse By inspection, index increment was missing. PR: 281843 Reported by: Matt Jacobson Reviewed by: bz, markj Fixes: e4611d26265f ("usb(4): Call optional endpoint_uninit() when changing configuration or alternate setting.") Sponsored by: The FreeBSD Foundation (cherry picked from commit 114080d19973331426cd826f3a961c6ea9216a53) --- sys/dev/usb/usb_device.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/dev/usb/usb_device.c b/sys/dev/usb/usb_device.c index c4fe3b4a6ab..bce1541ab3a 100644 --- a/sys/dev/usb/usb_device.c +++ b/sys/dev/usb/usb_device.c @@ -855,6 +855,7 @@ usb_config_parse(struct usb_device *udev, uint8_t iface_index, uint8_t cmd) if (ep->refcount_alloc != 0) return (USB_ERR_IN_USE); } + ep++; } }