rogan321
驱动牛犊
驱动牛犊
  • 注册日期2006-06-29
  • 最后登录2010-12-01
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望105点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
阅读:1245回复:6

這個code 在2k下某台特定的PC會BSOD

楼主#
更多 发布于:2008-01-22 22:17
MODULE_NAME: mysys

FAULTING_MODULE: 80400000 nt

DEBUG_FLR_IMAGE_TIMESTAMP: 47871bbd

EXCEPTION_RECORD: ae2a28e4 -- (.exr ffffffffae2a28e4)
ExceptionAddress: eb3210b4 (mysys!DumpModePages+0x00000018)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 00000008
Attempt to read from address 00000008

CONTEXT: ae2a253c -- (.cxr ffffffffae2a253c)
eax=00000008 ebx=00000018 ecx=00000008 edx=00000018 esi=00000009 edi=00000000
eip=eb3210b4 esp=ae2a29ac ebp=ae2a29e8 iopl=0 nv up ei pl nz na po nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010202
mysys!DumpModePages+0x18:
eb3210b4 8a11 mov dl,byte ptr [ecx] ds:0023:00000008=??
Resetting default scope

DEFAULT_BUCKET_ID: WRONG_SYMBOLS

BUGCHECK_STR: 0x26

LAST_CONTROL_TRANSFER: from eb3213e2 to eb3210b4

STACK_TEXT:
ae2a29b0 eb3213e2 00000008 00000018 85542020 mysys!DumpModePages+0x18 [d:\mssys\filemon.c @ 623]
ae2a29e8 8041eecb 01000000 5ae5d3c8 84e5d508 mysys!FilterDeviceControl+0x174 [d:\mssys\filemon.c @ 546]
WARNING: Stack unwind information not available. Following frames may be wrong.
ae2a2a78 eb333065 855429b0 84e5d3c8 84e5d3c8 nt!IoBuildSynchronousFsdRequest+0x8f
ae2a2b04 eb04216e 855429b0 84e5d301 855429b0 cdrom+0x3065
00000000 00000000 00000000 00000000 00000000 CLASSPNP!ClassFindModePage+0xc8


FOLLOWUP_IP:
mysys!DumpModePages+18 [d:\mysys\filemon.c @ 623]
eb3210b4 8a11 mov dl,byte ptr [ecx]

FAULTING_SOURCE_CODE:

>  623:             if( strlen(pages) < 2 ||  !pages[1])
  624:                 break ;

根據測試只要檢查到 pages[1] 就會死掉
如果說 pages[1] 是NULL 或不存在的位址那麼應該所有的PC都會有此現象
可是我嘗試在其他的機器去測試 pages[x] 超乎 pages的大小 每台機器都沒問題
就只有那台會............
該如何避開這個錯誤阿...怎麼只是簡單的檢查 pages[1] 就掛了...
拜託~給個意見吧...
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
沙发#
发布于:2008-01-22 22:29
先看你的 pages 是不是飞了?
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
rogan321
驱动牛犊
驱动牛犊
  • 注册日期2006-06-29
  • 最后登录2010-12-01
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望105点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-01-22 22:40
要怎麼知道是不是 "飛了"
我處理前有先
if(pages  )
{
 // my job...
}

這樣對那台還是無效,且是那台也不是隨機產生BSOD
而是只要開啟 VMWare6 ,在啟動虛擬作業系統的要進去windowsXp瞬間時才會
同樣的OS 與 同樣的VMWare 在別台卻都不會....
客戶的PC,實在不方便去調機器來測試..有什麼好的建議嗎...
rogan321
驱动牛犊
驱动牛犊
  • 注册日期2006-06-29
  • 最后登录2010-12-01
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望105点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-01-23 21:22
有人可以給個建議嗎~
rogan321
驱动牛犊
驱动牛犊
  • 注册日期2006-06-29
  • 最后登录2010-12-01
  • 粉丝0
  • 关注0
  • 积分12分
  • 威望105点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-01-24 17:05
努力往上推...真的沒輒了....    
cyliu
论坛版主
论坛版主
  • 注册日期2003-06-13
  • 最后登录2014-04-11
  • 粉丝5
  • 关注0
  • 积分1238分
  • 威望2531点
  • 贡献值0点
  • 好评度577点
  • 原创分14分
  • 专家分10分
5楼#
发布于:2008-01-24 20:44
看看出现问题的机器与其他没有问题的机器的配置和应用有哪些不同。可能与其他软件冲突或者系统的patch不同造成。找到差异,再找问题。
走走看看开源好 Solaris vs Linux
killvxk
论坛版主
论坛版主
  • 注册日期2005-10-03
  • 最后登录2014-04-14
  • 粉丝3
  • 关注1
  • 积分1082分
  • 威望2003点
  • 贡献值0点
  • 好评度1693点
  • 原创分2分
  • 专家分0分
6楼#
发布于:2008-02-02 16:21
probeforread first~
and check irql at all begin
if >=dispatch_level check mmisaddressvalid
if <dpc do lock or probeforread before any op on mem
if u do lock after op need unlock it
没有战争就没有进步 X3工作组 为您提供最好的军火
游客

返回顶部