staging: vt6656: Fix URB submitted while active warning.
authorMalcolm Priestley <tvboxspy@gmail.com>
Wed, 30 Jan 2013 20:07:29 +0000 (20:07 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2013 09:30:45 +0000 (10:30 +0100)
commitae5943de8c8c4438cbac5cda599ff0b88c224468
treec5ccd9d89df4e3e94b32ccac553908eaefc7a38f
parentd13b0b6d51e78b0107c76d79cf0ef06d9e07650b
staging: vt6656: Fix URB submitted while active warning.

This error happens because PIPEnsControlOut and PIPEnsControlIn unlock the
spin lock for delay, letting in another thread.

The patch moves the current MP_SET_FLAG to before filling
of sUsbCtlRequest for pControlURB and clears it in event of failing.

Any thread calling either function while fMP_CONTROL_READS or fMP_CONTROL_WRITES
flags set will return STATUS_FAILURE.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Cc: stable@vger.kernel.org # 3.8
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/vt6656/usbpipe.c