Updated to 2.6.32.27
/drivers/usb/misc/usbtest.c
blob:a9f06d76960ffa936858adaf321d5c53d39605dd -> blob:d6a2ef374d832447442db0207fd9a19967c94fd1
--- drivers/usb/misc/usbtest.c
+++ drivers/usb/misc/usbtest.c
@@ -1382,7 +1382,6 @@ static void iso_callback (struct urb *ur
break;
}
}
- simple_free_urb (urb);
ctx->pending--;
if (ctx->pending == 0) {
@@ -1499,6 +1498,7 @@ test_iso_queue (struct usbtest_dev *dev,
}
simple_free_urb (urbs [i]);
+ urbs[i] = NULL;
context.pending--;
context.submit_error = 1;
break;
@@ -1508,6 +1508,10 @@ test_iso_queue (struct usbtest_dev *dev,
wait_for_completion (&context.done);
+ for (i = 0; i < param->sglen; i++) {
+ if (urbs[i])
+ simple_free_urb(urbs[i]);
+ }
/*
* Isochronous transfers are expected to fail sometimes. As an
* arbitrary limit, we will report an error if any submissions