Bug Check 0x40: TARGET_MDL_TOO_SMALL
The TARGET_MDL_TOO_SMALL bug check has a value of 0x00000040. This indicates that a driver has improperly used IoBuildPartialMdl.
|Important Info If You Have Received a STOP Code|
If you received a blue screen error, or stop code, the computer has shut down abruptly to protect itself from data loss.
For information about how to recover from this error, see Resolving Blue Screen errors in Windows.
This is a driver bug. A driver has called the IoBuildPartialMdl function and passed it an MDL to map part of a source MDL, but the target MDL is not large enough to map the entire range of addresses requested.
The source and target MDLs, as well as the address range length to be mapped, are the first, second, and fourth arguments to the IoBuildPartialMdl function. Therefore, doing a stack trace on this particular function might help during the debugging process. Ensure that your code is correctly calculating the necessary size for the target MDL for the address range length that you are passing to this function.