linhao
驱动牛犊
驱动牛犊
  • 注册日期2001-04-11
  • 最后登录2011-06-09
  • 粉丝13
  • 关注0
  • 积分201分
  • 威望210点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
阅读:2152回复:3

while判断为什么会蓝屏

楼主#
更多 发布于:2011-01-06 11:29
我改写diskperf 代码DiskPerfReadWrite中加了一个判断延时.但是有时候会蓝屏.

我想不明白的是为什么会提示我while判断那里崩溃?可能是windbg指向不准造成的吗?

如果是KeDelayExecutionThread语句,我也看不出来为什么错呀.延时都是正确的,我跟踪过.

可能是IRQL造成的吗?DiskPerfReadWrite应该没问题的.


waitTime定义了1毫秒
nUseMapBuffer是ULONG类型,

蓝屏后,windbg输出如下:
FAULTING_SOURCE_CODE:  
  1886:     {
  1887:         int sx=0;
  1888:     }
  1889:
> 1890:     while(nUseMapBuffer>0)
  1891:     {
  1892: //        DbgPrint( "jjl------KeDelayExecutionThread\n");//VolumeIndex= %I32u
  1893:         KeDelayExecutionThread(KernelMode, FALSE, &waitTime);
  1894:     }
  1895:


SYMBOL_STACK_INDEX:  3

SYMBOL_NAME:  CDPTuner!ChangeMap+45

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: CDPTuner

IMAGE_NAME:  CDPTuner.sys

BUCKET_ID:  WRONG_SYMBOLS

Followup: MachineOwner
游客

返回顶部