Compartir a través de


Regla MemAfterReqCompletedIntIoctl (kmdf)

La regla MemAfterReqCompletedIntIoctl especifica que dentro de la función de devolución de llamada EvtIoInternalDeviceControl, no se puede tener acceso al objeto de memoria del marco una vez completada la solicitud de E/S.

En la función de devolución de llamada EvtIoInternalDeviceControl del controlador, no se puede acceder al objeto de memoria del marco que se recuperó después de llamar a los métodos WdfRequestRetrieveInputMemory o WdfRequestRetrieveOutputMemory después de llamar a WdfRequestComplete, WdfRequestCompleteWithInformation o WdfRequestCompleteWithPriorityBoost en la solicitud de E/S.

Esta regla tiene en cuenta los dos métodos de acceso a memoria siguientes:

WdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory

Modelo de controlador: KMDF

Cómo probar

En tiempo de compilación

Ejecute el comprobador de controladores estáticos y especifique la regla MemAfterReqCompletedIntIoctl.

Siga estos pasos para ejecutar un análisis del código:
  1. Prepare el código (use declaraciones de tipo de rol).
  2. Ejecute el comprobador de controladores estáticos.
  3. Visualice y analice los resultados.

Para obtener más información, consulte Uso del comprobador de controladores estáticos para buscar defectos en controladores.

Se aplica a

WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputMemoryWdfRequestRetrieveOutputMemory