rem: void scsi_resubmit_request( scsi_ccb *request )
add: scsi_resubmit_request(scsi_ccb *request)
context: void scsi_resubmit_request( scsi_ccb *request ){	scsi_bus_info *bus = request->bus;	scsi_device_info *device = request->device;	bool was_servicable, start_retry;		FAST_LOG1( device->log, ev_scsi_resubmit_request, (uint32)request );	SHOW_FLOW0( 3, "" );	if( request->state != SCSI_STATE_SENT ) {		panic( "Unsent ccb was asked to get resubmitted\n" );		return;	}		request->state = SCSI_STATE_QUEUED;		ACQUIRE_BEN( &bus->mutex );		was_servicable = scsi_can_service_bus( bus );	if( bus->left_slots++ == 0 )		scsi_unblock_bus_noresume( bus, false );			if( device->left_slots++ == 0 || request->ordered )		scsi_unblock_device_noresume( device, false );			// if SIM reported overflow of device/bus, this should (hopefully) be over now	scsi_clear_device_overflow( device );			scsi_clear_bus_overflow( bus );		// we don't want to let anyone overtake this request	request->ordered = true;		// make it the next request submitted to SIM for this device	scsi_add_req_queue_first( request );		// if device is not blocked (anymore) add it to waiting list of bus	if( device->lock_count == 0 ) {		scsi_add_device_queue_first( device );		// as previous line does nothing if already queued, we force device 		// to be the next one to get handled		bus->waiting_devices = device;	}	start_retry = !was_servicable && scsi_can_service_bus( bus );			RELEASE_BEN( &bus->mutex );		// let the service thread do the resubmit	if( start_retry )		release_sem_etc( bus->start_service, 1, 0/*B_DO_NOT_RESCHEDULE*/ );}