DoubleExFreePool rule (storport)

This rule verifies that the driver does not attempt to free the same block of pool memory twice.

The rule keeps track of the memory pointer that is first passed to ExFreePool. If the same pointer is passed again, the driver fails the rule. If the driver calls RemoveHeadList or RemoveEntryList, the rule passes.

Driver model: Storport

How to test

At compile time

Run Static Driver Verifier and specify the DoubleExFreePool 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

ExFreePool RemoveEntryList RemoveHeadList