Loading drivers/usb/gadget/function/f_fs.c +4 −2 Original line number Diff line number Diff line Loading @@ -1346,7 +1346,7 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, case FUNCTIONFS_ENDPOINT_DESC: { int desc_idx; struct usb_endpoint_descriptor *desc; struct usb_endpoint_descriptor desc1, *desc; switch (epfile->ffs->gadget->speed) { case USB_SPEED_SUPER: Loading @@ -1358,10 +1358,12 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, default: desc_idx = 0; } desc = epfile->ep->descs[desc_idx]; memcpy(&desc1, desc, desc->bLength); spin_unlock_irq(&epfile->ffs->eps_lock); ret = copy_to_user((void __user *)value, desc, desc->bLength); ret = copy_to_user((void __user *)value, &desc1, desc1.bLength); if (ret) ret = -EFAULT; return ret; Loading Loading
drivers/usb/gadget/function/f_fs.c +4 −2 Original line number Diff line number Diff line Loading @@ -1346,7 +1346,7 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, case FUNCTIONFS_ENDPOINT_DESC: { int desc_idx; struct usb_endpoint_descriptor *desc; struct usb_endpoint_descriptor desc1, *desc; switch (epfile->ffs->gadget->speed) { case USB_SPEED_SUPER: Loading @@ -1358,10 +1358,12 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, default: desc_idx = 0; } desc = epfile->ep->descs[desc_idx]; memcpy(&desc1, desc, desc->bLength); spin_unlock_irq(&epfile->ffs->eps_lock); ret = copy_to_user((void __user *)value, desc, desc->bLength); ret = copy_to_user((void __user *)value, &desc1, desc1.bLength); if (ret) ret = -EFAULT; return ret; Loading