MdlAfterReqCompletedIntIoctlA 규칙(kmdf)
MdlAfterReqCompletedIntIoctlA 규칙은 EvtIoInternalDeviceControl 콜백 함수 내에서 I/O 요청이 완료된 후 MDL(메모리 설명자 목록)에 액세스할 수 없음을 지정합니다.
드라이버의 EvtIoInternalDeviceControl 콜백 함수 내에서 I/O 요청에서 WdfRequestComplete, WdfRequestCompleteWithInformation 또는 WdfRequestCompleteWithInformation 또는 WdfRequestCompleteWithPriorityBoost를 호출한 후 WdfRequestRetrieveInputWdmdl 또는 WdfRequestRetrieveOutputWdmdl 메서드를 호출하여 검색한 MDL에 액세스할 수 없습니다.
이 규칙은 다음 MDL 액세스 함수를 고려합니다.
WDF_MEMORY_DESCRIPTOR_INIT_MDLMmGetMdlByteCountMmGetSystemAddressForMdlSafeMmGetMdlVirtualAddressIoBuildPartialMdl (첫 번째 및 두 번째 매개 변수) KeFlushIoBuffersMmGetMdlPfnArrayMmGetMdlByteOffsetMmPrepareMdlForReuseWdfDmaTransactionInitialize
드라이버 모델: KMDF
테스트 방법
컴파일 시 |
---|
정적 드라이버 검증 도구를 실행하고 MdlAfterReqCompletedIntIoctlA 규칙을 지정합니다. 다음 단계를 사용하여 코드 분석을 실행합니다. |
적용 대상
WDF_MEMORY_DESCRIPTOR_INIT_MDLWdfDmaTransactionInitializeWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputWdmdlWdfRequestRetrieveOutputWdmdlIoBuildPartialMdlKeFlushIoBuffersMmGetMdlByteCountMmGetMdlByteOffsetMmGetMdlPfnArrayMmGetMdlVirtualAddressMmGetSystemAddressForMdlSafeMmPrepareMdlForReuse