Artificial truth

archives | latest | homepage | atom/rss/twitter

The more you see, the less you believe.

Fixing DMAR: DRHD: handling fault status reg 2 on a thinkpad x230
Wed 26 June 2019 — download

Yesterday, my beloved Thinkpad x230 started to randomly crash, sometimes even with bootloops, and the lasts things available in the logs, when it to get past disk encryption, where the following lines:

Jun 25 22:25:43 grimhilde kernel: [  551.300388] DMAR: DRHD: handling fault status reg 2
Jun 25 22:25:43 grimhilde kernel: [  551.300402] DMAR: [INTR-REMAP] Request device [03:00.0] fault index 18 [fault reason 38] Blocked an interrupt request due to source-id verification failure

DMAR stands for DMA-remapping (you can check the related code here), and INTR for interruption: something must likely be wrong in their neighbourhood. A completely wild guess would be that the crash is related to Intel Vt since:

  • Virtualisation deals with DMA a lot;
  • Intel Vt is explicitly mentioned in the code next to the error message;
  • my machine is sometimes correctly booting;
  • it's one of the laziest low-hanging switch to toggle to see if it is the culprit.

I turned Intel Vt off in the BIOS, and didn't experience bootloops or crashes since but since my CMOS battery is likely dying, it might also be a completely random coincidence.