TranScreenCamera蓝屏分析

背景

最近一个朋友找到我帮他们查一个问题,是虚拟摄像头的一个蓝屏问题,不是必现的蓝屏,隔一段时间出现一次,他们查了很久,没有头绪,所以找我帮他们看看。他们给了一个蓝屏的mini dump以及相关的pdb和源码,有了这些东西,排查就和容易了。

初步分析

使用 windbg 打开 minidump,看到如下错误
崩溃在数据段 ffff8702`b5280000 这个位置
错误是 DRIVER_IRQL_NOT_LESS_OR_EQUAL,这个错误一般原因有两个:
(1)访问的地址不存在,地址已经释放了或者是空
(2)在 DISPATCH_LEVEL 的 IRQL 访问分页地址,当页面发生分页时产生缺页中断而发生蓝

在这里插入图片描述

详细分析

我们从上面看,貌似地址是个无效的地址,但是其实不一定,因为我打开的是 minidump,
信息不全,导致无法看到数据,而不一定是无效地址,看下类的成员变量如下,发现崩溃的
地址其实是 m_pBuffer
在这里插入图片描述
代码中的崩溃点如下图
目标地址是 m_SynthesisBuffer,在上面的局部变量也有,他的地址是 0xffffe389ebe20000,不
是崩溃点,所以崩溃点只能是 data 了。
在这里插入图片描述
再看看如下代码,SendData 把 m_pBuffer 传进来,这样就能对应上了。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宸汐软件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值