I was looking at a few different crashes today that were all eerily similar. In doing so, I realized that I hadn’t asked if these were all different systems or the same system. I could have just asked the person reporting the crashes, but what fun is that? Prior to Windows 10, the computer name […]
Beware MmBuildMdlForNonPagedPool and Kernel Stacks
Well, this one took us by surprise… MmBuildMdlForNonPagedPool is the standard shortcut function drivers use to build MDLs describing non-pageable memory. Despite the name, the buffer described by the MDL does not necessarily need to come from non-paged pool. For example, the documentation says it’s legal to call MmBuildMdlForNonPagedPool on the buffer returned by MmAllocateContiguousMemorySpecifyCache, […]
“The Lists” Are Moving!
You’re probably aware that, for more than 20 years, OSR has supported and maintained a set of peer-support lists. During that time, NTDEV, NTFSD, and WINDBG have become the definitive places among Windows system software developers to ask questions and get answers. We are proud to announce that in the coming weeks, we’ll be moving […]
What’s New in WDK 1803: Your Driver Has 552 Code Analysis Warnings
These days, each new upgrade for Windows brings with it a new Windows Driver Kit. And each new Windows Driver Kit brings with it new functions and features. Note that at the time of this writing (21 May 2018) the latest version of Visual Studio is 15.7.1 — and this is definitely the version you […]
Beware of IoBuildDeviceIoControlRequest
Diagnosed yet another crash today that is likely due to the usage of IoBuildDeviceIoControlRequest. Long ago I was burned by this API and vowed to never use it again, but somehow I neglected to share this with everyone else. Sorry about that! The trouble with this API is that it’s an attractive nuisance. You need […]
Visual Studio 2017 Support for Spectre Mitigation
Just a quick note to make you aware that the version of Visual Studio 2017 that includes support for the /Qspectre switch, and the “__declspec(spectre(nomitigation))” decoration that can be used to exempt performance critical code segments from fence insertion, is now available for download. The version is VS 2017 V15.5.5… Check it out here: https://www.visualstudio.com/en-us/news/releasenotes/vs2017-relnotes
Meltdown and Spectre: What about drivers?
The week the Meltdown and Spectre vulnerabilities was one of the most fun weeks I’ve had in a while. Not only were the vulnerabilities mind-bendingly clever, that week had just about everything you could possibly want in a story: mystery, intrigue, heroes, villains, and probably the greatest patch ever submitted. After consuming as much information […]
Guidance for Installing and Using WDK 1709 (aka 16299 aka RS3)
The newest WDK works with Visual Studio 2017! Let’s celebrate. But, it seems nothing is totally straight-forward anymore. Now that the new WDK is available, we thought we’d pass along a few hints/pointers to help you navigate the upgrade. In no particular order, here are our top hints for installing and using the newest WDK […]
Community Speaks Loudly and Clearly: We Want a Driver Conference!
There’s no point in keeping the polling open forever. We released the most recent issue of The NT Insider a week ago. In that issue, we asked the Windows Driver Development Community: Should Microsoft hold a conference for driver developers, and if so where would be the best location to hold it? The response was […]
WDK 1709 (aka 16299 aka RS3) Released!
Yet another release of Windows 10 means yet another release of the WDK: https://developer.microsoft.com/en-us/windows/hardware/windows-driver-kit The big news with this release is that driver development is finally integrated with Visual Studio 2017. Also good news is that this kit continues to support development for Windows 7, meaning that there aren’t many reasons to NOT upgrade to […]