有没有做驱动的前辈,一个错误请教

nullah 2009-06-04 09:21:07
程序播放一个声音的时候有时候(一天会有几次)会导致蓝屏,用的是fmod

用windbg看了下dmp文件,但是看不懂,贴出来,大家帮忙来分析下,或者给我提供点解决办法
Debugging Details:
------------------


READ_ADDRESS: 00000104

CURRENT_IRQL: 2

FAULTING_IP:
RtkHDAud+175675
ad5b7675 d860fc fsub dword ptr [eax-4]

DEFAULT_BUCKET_ID: DRIVER_FAULT

BUGCHECK_STR: 0xD1

PROCESS_NAME: 1.exe

LAST_CONTROL_TRANSFER: from ad59e322 to ad5b7675

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
aa9374a4 ad59e322 89893528 88780600 89515250 RtkHDAud+0x175675
aa937538 ad5a4dbf 00000000 89514b70 aa937578 RtkHDAud+0x15c322
aa937560 ad5a3bbf 89514b70 89514000 aa937864 RtkHDAud+0x162dbf
aa937588 ad580d82 00000000 00023cb4 aa9375ac RtkHDAud+0x161bbf
aa937850 ad58983a 00000000 89514000 89514000 RtkHDAud+0x13ed82
aa9378a8 ad420d7a 887805e0 00000003 00000003 RtkHDAud+0x14783a
aa9378c8 ad430876 888e09fc 00000003 00000002 portcls!CPortPinWaveCyclic::SetDeviceState+0x45
aa937900 ad430c83 888bb910 00000002 887a8838 portcls!CPortPinWaveCyclic::DistributeDeviceState+0x4d
aa93791c b993ff4c 898701a4 889ee108 889ee100 portcls!PinPropertyDeviceState+0xa6
aa937980 b993fec9 887a8838 0000000c e1a9419c ks!KspPropertyHandler+0x616
aa9379a4 ad42f1bd 887a8838 0000000c e1a94188 ks!KsPropertyHandler+0x19
aa9379b4 ad430753 887a8838 0000000c e1a94188 portcls!PcHandlePropertyWithTable+0x1a
aa9379ec ad42f148 888e09f0 89957900 887a8838 portcls!CPortPinWaveCyclic::DeviceIoControl+0x1e3
aa937a04 b993ff0f 89957900 887a8838 aa937a58 portcls!DispatchDeviceIoControl+0x44
aa937a14 ad436b75 89957900 887a8838 899579b8 ks!KsDispatchIrp+0x126
aa937a28 ad436dd8 89957900 887a8838 ad81f096 portcls!KsoDispatchIrp+0x40
aa937a34 ad81f096 89957900 887a8838 887b89d0 portcls!PcDispatchIrp+0x2a
aa937a58 804f0095 89957900 00000004 887a8838 RtkHDAud+0x3dd096
aa937a68 b9940c47 aa8e9a8c aa937ad4 e5d6dbac nt!IopfCallDriver+0x31
aa937a94 aa8eab33 887b89d0 00000000 002f0003 ks!KsSynchronousIoControlDevice+0xbd
aa937adc aa8ed0a4 887b89d0 00000000 00000002 sysaudio!PinConnectionProperty+0x42
aa937b08 aa8ecc3c 00000003 00000003 00000006 sysaudio!CPinNodeInstance::SetState+0x101
aa937b20 aa8ecbff 00000003 00000002 00000006 sysaudio!CStartNodeInstance::SetStateTopDown+0x25
aa937b40 aa8eb32c 00000003 00000006 887da9f8 sysaudio!CStartNodeInstance::SetState+0x3f
aa937b54 b993ff4c e5bde610 887da9f8 887da9f0 sysaudio!CPinInstance::PinStateHandler+0x5d
aa937bb8 b993fec9 888865d8 00000003 aa8e9a30 ks!KspPropertyHandler+0x616
aa937bdc aa8eb28c 888865d8 00000003 aa8e9a30 ks!KsPropertyHandler+0x19
aa937c30 b993ff85 89a9b560 888865d8 aa937c64 sysaudio!CPinInstance::PinDispatchIoControl+0x115
aa937c40 804f0095 89a9b560 888865d8 806e5410 ks!DispatchDeviceIoControl+0x28
aa937c50 8057f70a 88886720 888366c8 888865d8 nt!IopfCallDriver+0x31
aa937c64 8058056d 89a9b560 888865d8 888366c8 nt!IopSynchronousServiceTail+0x60
aa937d00 805790c2 000019f4 00000190 00000000 nt!IopXxxControlFile+0x5c5
aa937d34 8054186c 000019f4 00000190 00000000 nt!NtDeviceIoControlFile+0x2a
aa937d34 7c92eb94 000019f4 00000190 00000000 nt!KiFastCallEntry+0xfc
0012f68c 00000000 00000000 00000000 00000000 0x7c92eb94


STACK_COMMAND: kb

FOLLOWUP_IP:
RtkHDAud+175675
ad5b7675 d860fc fsub dword ptr [eax-4]

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: RtkHDAud+175675

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: RtkHDAud

IMAGE_NAME: RtkHDAud.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 469df8c7

FAILURE_BUCKET_ID: 0xD1_RtkHDAud+175675

BUCKET_ID: 0xD1_RtkHDAud+175675

Followup: MachineOwner
...全文
216 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
nullah 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 killbug2004 的回复:]
RtkHDAud驱动问题,你的程序运行在ring3,应该不是程序问题,是声卡驱动问题,重装声卡驱动吧
[/Quote]
你的程序运行在ring3?

这句话是什么意思
能稍微解释下堆栈里面反映了什么信息吗?
killbug2004 2009-06-04
  • 打赏
  • 举报
回复
RtkHDAud驱动问题,你的程序运行在ring3,应该不是程序问题,是声卡驱动问题,重装声卡驱动吧
Treazy 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 nullah 的回复:]
在某些电脑上在某些特定操作上会导致蓝屏,而且不是每次操作,只是个很小的概率。
我这个特定操作时要播放声音,所以我想确定,到底是我的程序导致的还是驱动不兼容导致的。
[/Quote]

这个就不清楚了,FMOD我没使用过
但是FMOD和驱动会有关系吗?你直接调用fmod的接口去驱动播放。
如果造成蓝屏,那也许就是fmod的bug了,
否则就可能你的应用程序不够强壮,有难以察觉的Bug
建议你输出log,把程序运行中你认为有可能会造成问题的地方加入调式信息
尤其在你特定操作播放的时候,调用接口再好好review下
nullah 2009-06-04
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 Treazy 的回复:]
先确认你出错的地方是在你写的驱动的地方挂了吗?
还是在你上层应用的时候挂了?

如果是蓝屏那很有可能是你的驱动程序有问题,
在这里先为了你的硬盘祈祷一下
当年我调式驱动结果由于蓝屏导致我的笔记本的硬盘坏了

你开发的是什么系统的驱动?windows XP?2000?还是?
softice是不错的驱动调试和开发工具,可以配合你的DDK进行开发

这种驱动错误,从windbg上很难得到比较有价值的信息
在你的驱动和应用程序…
[/Quote]
我并非开发驱动的,只是开发的程序, 在某些电脑上在某些特定操作上会导致蓝屏,而且不是每次操作,只是个很小的概率。
所以现在想确定到底是什么原因,我看windbg说是audio driver的错误
我这个特定操作时要播放声音,所以我想确定,到底是我的程序导致的还是驱动不兼容导致的。
Treazy 2009-06-04
  • 打赏
  • 举报
回复
先确认你出错的地方是在你写的驱动的地方挂了吗?
还是在你上层应用的时候挂了?

如果是蓝屏那很有可能是你的驱动程序有问题,
在这里先为了你的硬盘祈祷一下
当年我调式驱动结果由于蓝屏导致我的笔记本的硬盘坏了

你开发的是什么系统的驱动?windows XP?2000?还是?
softice是不错的驱动调试和开发工具,可以配合你的DDK进行开发

这种驱动错误,从windbg上很难得到比较有价值的信息
在你的驱动和应用程序中多加入些信息从串口输出吧,这样有助于快速定位问题




nullah 2009-06-04
  • 打赏
  • 举报
回复
up
chenzhp 2009-06-04
  • 打赏
  • 举报
回复
好高深啊
sagegz 2009-06-04
  • 打赏
  • 举报
回复
友情UP~!
majun01 2009-06-04
  • 打赏
  • 举报
回复
up
「已注销」 2009-06-04
  • 打赏
  • 举报
回复
怀疑是声卡驱动的问题。
在别的电脑上也如此?
lzh9955 2009-06-04
  • 打赏
  • 举报
回复
关注
zjf30366 2009-06-04
  • 打赏
  • 举报
回复
学习ing,帮顶。
wanghao111 2009-06-04
  • 打赏
  • 举报
回复
学习 顶
killbug2004 2009-06-04
  • 打赏
  • 举报
回复
仅仅是在应用层调用音频播放接口导致蓝屏,估计是驱动的问题,你可以google下 RtkHDAud蓝屏的情况网上很多
woods2001 2009-06-04
  • 打赏
  • 举报
回复
完全看不懂,,,
顶贴~

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧