OSDN Git Service

usb: bdc: driver runs out of buffer descriptors on large ADB transfers
authorAl Cooper <alcooperx@gmail.com>
Wed, 22 Jul 2020 17:07:44 +0000 (13:07 -0400)
committerFelipe Balbi <balbi@kernel.org>
Fri, 24 Jul 2020 13:45:14 +0000 (16:45 +0300)
commitb10d33c4f068ebb70a607d644b7ace259127aa18
treedc3bfd123091866c52d84d0730251088061f8528
parent33d1c71832b7b7e56ca82b2f19c5df31297657e6
usb: bdc: driver runs out of buffer descriptors on large ADB transfers

Version v1.0.40 of the Android host ADB software increased maximum
transfer sizes from 256K to 1M. Since the STB ADB gadget driver
requests only 16K at a time, the BDC driver ran out of buffer
descriptors (BDs) if the queuing happens faster than the incoming
16K transfers. This issue is fixed by doubling the number of BDs
that can be queued so that the entire 1M request can be queued
without running out of buffers.

Signed-off-by: Al Cooper <alcooperx@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
drivers/usb/gadget/udc/bdc/bdc.h