MdlAfterReqCompletedIoctl rule (kmdf)
La règle MdlAfterReqCompletedIoctl spécifie que dans la fonction de rappel EvtIoDeviceControl , la liste de descripteurs mémoire (MDL) n’est pas accessible une fois la demande d’E/S terminée.
Dans la fonction de rappel EvtIoDeviceControl du pilote, la mdL récupérée en appelant la méthode WdfRequestRetrieveInputWdmMdl ou WdfRequestRetrieveOutputWdmMdl n’est pas accessible après avoir appelé WdfRequestComplete, WdfRequestCompleteWithInformation ou WdfRequestCompleteWithPriorityBoost sur la demande d’E/S.
Cette règle examine les fonctions d’accès MDL suivantes :
WDF_MEMORY_DESCRIPTOR_INIT_MDLMmGetMdlByteCountMmGetSystemAddressForMdlSafeMmGetMdlVirtualAddressIoBuildPartialMdl (premier et deuxième paramètre) KeFlushIoBuffersMmGetMdlPfnArrayMmGetMdlByteOffsetMmPrepareMdlForReuseWdfDmaTransactionInitialize
Modèle de pilote : KMDF
Comment tester
Au moment de la compilation |
---|
Exécutez Static Driver Verifier et spécifiez la règle MdlAfterReqCompletedIoctl . Utilisez les étapes suivantes pour exécuter l’analyse de votre code :
Pour plus d’informations, consultez Utilisation du vérificateur de pilote statique pour rechercher des défauts dans les pilotes. |
S’applique à
WdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputWdmMdlWdfRequestRetrieveOutputWdmMdl