DoubleCompletion rule (kmdf)

The DoubleCompletion rule specifies that drivers must not complete an I/O request twice. The following methods should not be called twice in a row for the same request: WdfRequestComplete, WdfRequestCompleteWithInformation, WdfRequestCompleteWithPriorityBoost.

The difference between this rule and the DoubleCompletionLocal rule is that the DoubleCompletionLocal rule is only performed within the default I/O queue callback functions.

Driver modelKMDF

How to test

At compile time

Run Static Driver Verifier and specify the DoubleCompletion rule.

Use the following steps to run an analysis of your code:
  1. Prepare your code (use role type declarations).
  2. Run Static Driver Verifier.
  3. View and analyze the results.

For more information, see Using Static Driver Verifier to Find Defects in Drivers.

Applies to

WdfIoQueueRetrieveFoundRequest
WdfIoQueueRetrieveNextRequest
WdfIoQueueRetrieveRequestByFileObject
WdfRequestComplete
WdfRequestCompleteWithInformation
WdfRequestCompleteWithPriorityBoost

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft