context->srb->use_sg ? mts_do_sg : mts_data_done); 
context->srb->use_sg > 1 ? mts_do_sg : mts_data_done); 
static void mts_command_done( struct urb *transfer, struct pt_regs *regs )/* Interrupt context! */{	MTS_INT_INIT();	if ( unlikely(transfer->status) ) {	        if (transfer->status == -ENOENT) {		        /* We are being killed */			MTS_DEBUG_GOT_HERE();			context->srb->result = DID_ABORT<<16;                } else {		        /* A genuine error has occurred */			MTS_DEBUG_GOT_HERE();		        context->srb->result = DID_ERROR<<16;                }		mts_transfer_cleanup(transfer);		return;	}	if (context->srb->cmnd[0] == REQUEST_SENSE) {		mts_int_submit_urb(transfer,				   context->data_pipe,				   context->srb->sense_buffer,				   context->data_length,				   mts_data_done);	} 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;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/9142d59a451731d23539d218c962418acc93283c/microtek.c/buggy/drivers/usb/image/microtek.c