summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/composite.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-03 15:44:38 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-03 15:44:38 +0300
commit824adf37ee9ddf3ecba1bc245507bc5953dda268 (patch)
treeee85366f9e2c019b58492558d8ad406df35fd260 /drivers/usb/gadget/composite.c
parentf2ee4759fb700b32a1bd830960fe86bf6bdfd0ab (diff)
parentc9e6606c7fe92b50a02ce51dda82586ebdf99b48 (diff)
downloadlinux-824adf37ee9ddf3ecba1bc245507bc5953dda268.tar.xz
Merge 5.16-rc8 into char-misc-next
We need the fixes in here as well for testing. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/gadget/composite.c')
-rw-r--r--drivers/usb/gadget/composite.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index 284eea9f6e4d..3789c329183c 100644
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -1680,14 +1680,14 @@ composite_setup(struct usb_gadget *gadget, const struct usb_ctrlrequest *ctrl)
u8 endp;
if (w_length > USB_COMP_EP0_BUFSIZ) {
- if (ctrl->bRequestType == USB_DIR_OUT) {
- goto done;
- } else {
+ if (ctrl->bRequestType & USB_DIR_IN) {
/* Cast away the const, we are going to overwrite on purpose. */
__le16 *temp = (__le16 *)&ctrl->wLength;
*temp = cpu_to_le16(USB_COMP_EP0_BUFSIZ);
w_length = USB_COMP_EP0_BUFSIZ;
+ } else {
+ goto done;
}
}