Microsoft small business knowledge base

Article ID: 2743712 - Last Review: August 27, 2012 - Revision: 1.0


Consider the following scenario:

You have a Windows 7 machine.
You have a serial USB device, while the device reads data in a loop from a USB Serial device; you encounter a Bugcheck 0x000000D1.


The bugcheck occurs due to a synchronization problem in a code path where it completes a IRP while another is trying to process it.



1. Do not use COMMTIMEOUTS in your device, but Application level timeouts.
2. Move to WinUsb/UMDF.
3. Use the UsbSer source code which is released in the Windows Driver Kit (WDK). (
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use ( for other considerations.

Applies to
  • Windows 7 Home Basic
  • Windows 7 Home Premium
  • Windows 7 Professional
  • Windows 7 Enterprise
  • Windows 7 Ultimate
Additional support options
Ask The Microsoft Small Business Support Community
Contact Microsoft Small Business Support
Find Microsoft Small Business Support Certified Partner
Find a Microsoft Store For In-Person Small Business Support