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 am working on migrating the USB driver(written using WDM) from Windows 7 to Windows 10/11 operating systems.
In this process, while running Static Driver Verifier tool, it detected issues around RemoveLock for IRP's.
I am confused by the usage of RemoveLocks usage with PnPDispatch, DispatchIOCTL functions and with respect to PausedIOQueues.
Can someone provide some pointer in this regard.
When analyzed the defects, I figured that IoReleaseRemoveLock is releasing the lock irrespective of the tag provided when acquired. Is there any way to restrict of check the status of lock before releasing the lock?
Below are the list of SDV rules that are failed:
|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!
|13-17 May 2024
|1-5 Apr 2024
|Internals & Software Drivers
|11-15 Mar 2024
|Writing WDF Drivers
|20-24 May 2024