Función ScsiPortStallExecution (srb.h)
La rutina ScsiPortStallExecution se detiene en el controlador de minipuerto.
Sintaxis
SCSIPORT_API VOID ScsiPortStallExecution(
[in] ULONG Delay
);
Parámetros
[in] Delay
Especifica el intervalo de retraso en microsegundos. El valor especificado debe ser menor que un milisegundo completo.
Valor devuelto
None
Observaciones
Se debe llamar a ScsiPortStallExecution lo menos posible y el tiempo total de bloqueo en una rutina del controlador de miniporte debe ser inferior a un milisegundo. Esta llamada vincula un procesador, sin hacer ningún trabajo útil mientras se detiene en el controlador.
En general, un controlador de minipuerto debe llamar a ScsiPortStallExecution solo si el controlador debe esperar un cambio de estado en el HBA que no puede provocar una interrupción, o si el controlador debe retrasarse durante un intervalo muy corto entre los accesos al HBA.
Si la rutina HwScsiInterrupt de un controlador de miniporte debe detenerse entre los accesos al HBA y el tiempo de retraso total en el ISR podría ser superior a un milisegundo, HwScsiInterrupt debe llamar a ScsiPortNotification con notificationTypeCallEnableInterrupts en lugar de llamar a ScsiPortStallExecution. Este miniportador tiene un par de HwScsi.. Interrumpe Las rutinascallback para administrar su procesamiento de E/S controlado por interrupciones sin atar un procesador y degradar el rendimiento de E/S de otros HBA que el controlador de minipuerto podría admitir en la misma máquina.
También se puede pasar una rutina HwScsiTimer proporcionada por el controlador miniporte a ScsiPortNotification con un intervalo especificado que no está limitado a un milisegundo.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | srb.h (incluya Miniport.h, Scsi.h) |
Library | Scsiport.lib |
Consulte también
HwScsiDisableInterruptsCallback