usb: dwc2: gadget: Expand buffer size of control endpoint
authorDongwoo Lee <dwoo08.lee@samsung.com>
Fri, 6 Mar 2020 05:04:13 +0000 (14:04 +0900)
committerHoegeun Kwon <hoegeun.kwon@samsung.com>
Mon, 6 Jul 2020 09:09:08 +0000 (18:09 +0900)
commit9127b3e99495b5380d62f9fce48b57fe54bf5526
tree61dfe6218ce0fa7c6e35cb98b59c3f7a2d7522c4
parent4ca09eddc7b27efb5f590fe785b697a70441350e
usb: dwc2: gadget: Expand buffer size of control endpoint

We found the case that buffer of control endpoint, which was allocated
with 8 bytes previously, is corrupted when the host races for setting
up interfaces. Even worse, it overwrites memory for other structure
such as usb_request for control endpoint and it causes kernel panic.
Especially in Tizen, it often happens when the target is configured as
multi-functional device: sdb + mtp.

In our emprical examination the buffer can be corrupted upto size of
456 bytes. With this result, the size of buffer will be enlarged to
512 bytes to prevent kernel panic even if it happens.

Change-Id: I20eb1283f3c82e09453960b72787175f734e7ec4
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
drivers/usb/dwc2/core.h