The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.
Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/
I'm wondering if there's an issue with a filter for Windows 10 version 2004 and higher HLK tests, or whether there's something I need to change to pass those tests.
We have a software-only KMDF driver (initialized with WdfDriverInitNonPnpDriver) that fails the HLK "PNP Rebalance Fail Restart Device Test (Reliability)" on Windows 10 version 2004. The log shows an error code on "Failed to open the EDT device," though this is shown as a message rather than an error highlighted in red in the HLK Manager viewer. A few lines down from that is an error that is highlighted in red, a result saying "PNP_VetoLegacyDevice" with our device's path followed by a few junk character glyphs. The issue also occurs on HLK tests for Windows 11 and Server 2022, with these also failing the "PNP Surprise Remove Device Test" for the same reason.
These same HLK tests succeed for Windows 10 version 1903, but only because of filter number 71900, which is described as "PNP tests need a test filter to be installed as an upper filter on the device stack. This isn't allowed on some software device stacks. Our tests fail with 'Failed to open EDT device' error message when testing these devices." Errata filtering in 1903's log is shown on lines that say "Failed to open the EDT" as well as a line that shows the result error PNP_VetoLegacyDevice, again with the device path followed by the same few junk characters.
This driver also passes all previous Windows 10 HLK tests, as well as HCK back to Windows 8.1.
In all these cases, the HLK and HCK controllers were updated with the same UpdateFilters.sql file downloaded within the last two weeks. Filter 71900 is in place: as I look at the Server 2022 test results, I see it was applied to allow the "PNP Cancel Remove Device Test" to pass. For some reason, it just didn't work for some tests on Windows 10 2004 and up.
Is there some new architectural requirement that came into play around Windows 10 2004, or is this just a case of a filter or test that needs to be fixed up by Microsoft?
|Upcoming OSR Seminars|
|OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!|
|Internals & Software Drivers||7 February 2022||Live, Online|
|Kernel Debugging||21 March 2022||Live, Online|
|Developing Minifilters||23 May 2022||Live, Online|
|Writing WDF Drivers||12 September 2022||Live, Online|