Commit a3cd1c05 authored by Oliver Neukum's avatar Oliver Neukum Committed by Greg Kroah-Hartman

[PATCH] fix for error handling in microtek

parent 4e505316
...@@ -583,13 +583,22 @@ static void mts_command_done( struct urb *transfer ) ...@@ -583,13 +583,22 @@ static void mts_command_done( struct urb *transfer )
return; return;
} }
if ( context->data ) { if (context->srb->cmnd[0] == REQUEST_SENSE) {
mts_int_submit_urb(transfer, mts_int_submit_urb(transfer,
context->data_pipe, context->data_pipe,
context->data, context->srb->sense_buffer,
context->data_length, context->data_length,
context->srb->use_sg ? mts_do_sg : mts_data_done); mts_data_done);
} else mts_get_status(transfer); } else { if ( context->data ) {
mts_int_submit_urb(transfer,
context->data_pipe,
context->data,
context->data_length,
context->srb->use_sg ? mts_do_sg : mts_data_done);
} else {
mts_get_status(transfer);
}
}
return; return;
} }
...@@ -598,7 +607,7 @@ static void mts_do_sg (struct urb* transfer) ...@@ -598,7 +607,7 @@ static void mts_do_sg (struct urb* transfer)
{ {
struct scatterlist * sg; struct scatterlist * sg;
MTS_INT_INIT(); MTS_INT_INIT();
MTS_DEBUG("Processing fragment %d of %d\n", context->fragment,context->srb->use_sg); MTS_DEBUG("Processing fragment %d of %d\n", context->fragment,context->srb->use_sg);
if (unlikely(transfer->status)) { if (unlikely(transfer->status)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment