usb: usbtest: add pattern check on pipe in phase of unlink read
authorHuang Rui <ray.huang@amd.com>
Thu, 22 May 2014 10:06:14 +0000 (18:06 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 27 May 2014 23:23:43 +0000 (16:23 -0700)
TEST 11 unlinks the URB read request for N times. When host and gadget
both initialize pattern 1 (mod 63) data series to do IN transfer, the
host side function should check the data buffer if it is as mod 63
series, because the data packet which host receivced will follow
pattern 1. So this patch adds this checking action.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/misc/usbtest.c

index 4ed457e..51a6da2 100644 (file)
@@ -1345,6 +1345,9 @@ static int unlink1(struct usbtest_dev *dev, int pipe, int size, int async)
                while (!completion_done(&completion)) {
                        retval = usb_unlink_urb(urb);
 
+                       if (retval == 0 && usb_pipein(urb->pipe))
+                               retval = simple_check_buf(dev, urb);
+
                        switch (retval) {
                        case -EBUSY:
                        case -EIDRM: