Re: [PATCH] musb_gadget: restart queue on dequeuing current request

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 27, 2010 at 03:26:38PM +0300, Sergei Shtylyov wrote:
Hello.

On 23-12-2010 21:30, Sergei Shtylyov wrote:

musb_gadget_dequeue() doesn't start the next request when dequeuing the current
one, but quite obviously it should...

Not quite as obvious as it turns out, as the next endpoint interrupt should really take care of the next request. So this patch doesn't seem necessary anymore...

Thanks for sending this note.

@@ -1274,13 +1276,17 @@ static int musb_gadget_dequeue(struct us
 			status = c->channel_abort(musb_ep->dma);
 		else
 			status = -EBUSY;
-		if (status == 0)
-			musb_g_giveback(musb_ep, request, -ECONNRESET);
-	} else {
+	}
+
+	if (status == 0) {
 		/* NOTE: by sticking to easily tested hardware/driver states,
 		 * we leave counting of in-flight packets imprecise.
 		 */
 		musb_g_giveback(musb_ep, request, -ECONNRESET);

  What can be done still is merging the two branches as I've done here...

Which is valid but rather a cleanup patch than a real bugfix or
regression fix, so that's also subject to 2.6.39.

--
balbi
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux