none
SDV rules RRS feed

  • Question

  • I am running Static Driver Verifier on my KMDF driver. In the tool the rules are classified as Default, DDIUsage, IRPPricessing etc...Is it mandatory to pass all these rules? Or is it just OK to verify the driver using the default rules which seem recommended? Does this rules have anything to do with WHQL?
    Tuesday, March 10, 2015 5:51 PM

Answers

  • Currently, Static Tools analysis is only required for certain Server driver categories.  A text snippet of the Req't is below.

    The SDV tool is useful for KMDF drivers along with Network and Storage drivers.  The Code Analysis tool works well across all driver types and categories.

    Microsoft may, for drivers certified for future Server OS versions, require fixing some of the issues found by these tools, rather than only recommending the rule violations be fixed.

    Device.DevFund.Server.StaticTools.SDVandPFD

    Driver Development includes static analysis to improve reliability using Static Driver Verifier (SDV) and Prefast for Drivers (PFD)

    Target Feature

    Device.DevFund.Server.StaticTools  

    Applies to

     Windows Server 2012 R2 x64

     Windows Server 2012 x64

    Description

    Server driver development must include log files for Static Driver Verifier (SDV) and Prefast for Drivers (PFD). Because these tools may produce false errors, you need only submit the logs rather than provide logs which are fully passing.

    Tuesday, March 10, 2015 7:01 PM

All replies

  • I don't believe that SDV is required for WHQL (this wasn't the case a few years ago but things could have changed with 8.1).  My own attitude is you should run all the SDV rules against your driver, the tool is there to find bugs, would you ship your driver with a bug in it if you could avoid it?


    Don Burn Windows Filesystem and Driver Consulting Website: http://www.windrvr.com

    Tuesday, March 10, 2015 6:07 PM
  • Currently, Static Tools analysis is only required for certain Server driver categories.  A text snippet of the Req't is below.

    The SDV tool is useful for KMDF drivers along with Network and Storage drivers.  The Code Analysis tool works well across all driver types and categories.

    Microsoft may, for drivers certified for future Server OS versions, require fixing some of the issues found by these tools, rather than only recommending the rule violations be fixed.

    Device.DevFund.Server.StaticTools.SDVandPFD

    Driver Development includes static analysis to improve reliability using Static Driver Verifier (SDV) and Prefast for Drivers (PFD)

    Target Feature

    Device.DevFund.Server.StaticTools  

    Applies to

     Windows Server 2012 R2 x64

     Windows Server 2012 x64

    Description

    Server driver development must include log files for Static Driver Verifier (SDV) and Prefast for Drivers (PFD). Because these tools may produce false errors, you need only submit the logs rather than provide logs which are fully passing.

    Tuesday, March 10, 2015 7:01 PM
  • Thanks for the replies. I have one more question about the "Not Applicable" result displayed by SDV. I understand that drivers are not required to have every entry point that SDV can analyze. If verification of a particular rule requires a driver entry point that the driver does not have, SDV cancels the verification of that rule and returns a result of Not Applicable. This result is not considered to be a failing result.

    But in my driver I cam calling the WdfFdoAddStaticChild() routine and i am calling it after WdfPdoInitAllocate and WdfDeviceCreate() as the adpdotostaticchildlist rule suggests ..But in the SDV result,it displays as Not applicable againt this rule. Does it mean that the rule is successfully verified? Shouldn't the result have been "Completed" or "Satisfied" if the verification was success?


    • Edited by its_me_here Wednesday, March 11, 2015 8:23 AM
    Wednesday, March 11, 2015 8:22 AM