Compartir a través de


Evitar problemas de tiempo de espera de DPC Watchdog en StorPort Miniports

Este artículo le ayuda a resolver los problemas de tiempo de espera de DPC Watchdog en StorPort Miniports.

Versión original del producto: Windows DPC Watchdog
Número de KB original: 2569413

Síntomas

El sistema deja de responder; por ejemplo, el teclado y el mouse no funcionan. Si un depurador de kernel está asociado al sistema, el depurador puede mostrar una aserción.

Causa

StorPort.sys controla las finalizaciones de E/S en una rutina que se ejecuta en DISPATCH_LEVEL y que llama serialmente a las rutinas de finalización de E/S de todos los IRP que se han completado. Si las rutinas de finalización de E/S se tardan demasiado tiempo o juntas, el teclado o el mouse pueden dejar de responder. También es posible que la rutina del temporizador del Guardián de Windows DPC decida que la rutina de StorPort ha tardado demasiado tiempo en finalizar.

Solución

Un controlador de kernel de la pila de almacenamiento puede reducir la probabilidad del problema mediante una codificación eficaz de la rutina de finalización de E/S del controlador. Si todavía no es posible realizar todo el procesamiento necesario en la rutina de finalización en tiempo suficiente, la rutina puede crear un elemento de trabajo para el trabajo de E/S, poner en cola el elemento en una cola de trabajo y devolver STATUS_MORE_PROCESSING_REQUIRED; un subproceso de trabajo del controlador debe encontrar el elemento de trabajo, realizar el trabajo y hacer IoCallerDriver para irP para asegurar el procesamiento de E/S adicional del IRP.

Para obtener más información sobre el control de IRP, consulte Diferentes formas de controlar IRP: hoja de referencia rápida ( parte 1 de 2)

Más información

En un volcado de kernel o en una sesión de depuración de kernel activa, storport! RaidUnitCompleteRequest puede aparecer en la pila de ejecución que se ejecuta en una CPU.