Title: Fixing DMAR: DRHD: handling fault status reg 2 on a thinkpad x230
Date: 2019-06-26 20:45

Yesterday, my beloved [Thinkpad x230](https://www.lenovo.com/us/en/laptops/thinkpad/x-series/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:

```C
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](https://github.com/torvalds/linux/blob/master/drivers/iommu/dmar.c)), 
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](https://www.intel.com/content/www/us/en/virtualization/virtualization-technology/intel-virtualization-technology.html)
since:

- Virtualisation deals with DMA a lot;
- *Intel Vt* is [explicitly mentioned](https://github.com/torvalds/linux/blob/v5.1/drivers/iommu/dmar.c#L1839-L1844)
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.
