drivers: net: usb: pegasus: fix control urb submission
authorPetko Manolov <petkan@nucleusys.com>
Thu, 25 Apr 2013 22:41:50 +0000 (22:41 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 29 Apr 2013 17:57:50 +0000 (13:57 -0400)
Pegasus driver used single callback for sync and async control URBs.
Special flags were employed to distinguish between both, but due to flawed
logic it didn't always work.  As a result of this change
[get|set]_registers() are now much simpler.  Async write is also leaner
and does not use single, statically allocated memory for usb_ctrlrequest,
which is another potential race when asynchronously submitting URBs.

Signed-off-by: Petko Manolov <petkan@nucleusys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/pegasus.c
drivers/net/usb/pegasus.h

Simple merge
Simple merge