天天看點

DMAR:[fault reason 06] PTE Read access is not set

    場景說明:使用USB裝置啟動Linux系統,出現這個情況下很可能導緻根檔案系統損壞,這種情況下的日志異常如下:

dmar:DRHD: handling fault status reg 2

dmar:DMAR:[DMA Read] Request device [00:1f.2] fault addr caa40000

DMAR:[fault reason 06] PTE Read access is not set

然後提出如下的問題:

問題1:DRHD是什麼

問題2:DMAR是什麼

問題3:00:1f.2是什麼位址,指向誰

問題4:PTE是什麼

問題5:NIC是什麼

問題6:DPDK是什麼

If you don't test the DPDK in virtualization environment.

The easy way to fix it is to disable the VT-d in the BIOS

如下是google的原文:

google上說該問題可以通過修改核心參數消除:

intel_iommu=off or intel_iommu=pt

但是無效。由于水準有限如下是:

I've googled that the errors should dissapear after setting intel_iommu=off or intel_iommu=pt kernel parameter but for me it's not

working at all. I've only learned that I shoudn't ignore this error as it affects 

performance (which is correct as my fps in games dropped badly) and destroy filesystems(關注點在

損壞檔案系統) (I don't understand why as it suppouse to be problem with video driver)

确實在現場中發現這個問題,根檔案系統嚴重損壞,并且導緻整個U盤無法格式化,變成隻讀,

完全over了。

I solved it by disabling virtualization support in bios... I don't get a thing now but I'm not using it anyway so... solved?

Edit: not solved, sorry, it was just for one reboot, probably prompt didn't appear for some reason...

查了資料發現參數是: intel_iommu=igfx_off 問題dmar表或者bios損壞了針對這個問題不得而知

Okay, so basically the command needs to be intel_iommu=igfx_off now (this error is rare and my previous search gave me solution

from 2009) and it fixed the issue. As I've learned, the error is because dmar tables or my BIOS are broken... don't really know

what it does, I'll check for upgrade but it's not Linux fault so I'm markin it as solved after all...

以上是問題的難點:

1)該錯誤是否會引起檔案系統損壞

2)該錯誤是否是硬體問題

     本文轉自fengyuzaitu 51CTO部落格,原文連結:http://blog.51cto.com/fengyuzaitu/1387042,如需轉載請自行聯系原作者

繼續閱讀