查看更多教程 https://on itroad.com
原因
此错误通常是由驱动程序传递错误的内存描述符列表引起的。
例如,驱动程序可能使用相同的列表两次调用 MmUnlockPages。
如果内核调试器可用,请检查堆栈跟踪:!analyze 调试扩展显示有关错误检查的信息,有助于确定根本原因,然后输入 k(显示堆栈回溯)命令之一以查看调用堆栈.
PFN_LIST_CORRUPT 错误检查的值为 0x0000004E。
这表明页框号 (PFN) 列表已损坏。
PFN_LIST_CORRUPT 参数
参数 1 表示violation类型。
其他参数的含义取决于参数 1 的值。
参数 1 | 参数 2 | 参数 3 | 参数 4 | 错误原因 |
---|---|---|---|---|
0x01 | ListHead 值已损坏 | 可用页数 | 0 | 列表头已损坏。 |
0x02 | 列表中被删除的条目 | 最高物理页号 | 被删除条目的引用计数 | 列表条目已损坏。 |
0x07 | 页框编号 | 当前共享计数 | 0 | 驱动程序解锁某个页面的次数多于锁定该页面的次数。 |
0x8D | 状态不一致的页框号 | 0 | 0 | 页空闲列表已损坏。此错误代码很可能表示硬件问题。 |
0x8F | 新页码 | 旧页码 | 0 | 空闲或者归零的页面列表头已损坏。 |
0x99 | 页框编号 | 当前页状态 | 0 | 页表条目 (PTE) 或者 PFN 已损坏。 |
0x9A | 页框编号 | 当前页状态 | 正在删除的条目的引用计数 | 驱动程序试图释放仍为 IO 锁定的页。 |
日期:2020-09-17 00:15:57 来源:oir作者:oir