[Bug 283189] Sporadic NVMe DMAR faults since updating to 14.2-STABLE
Date: Tue, 01 Apr 2025 21:40:43 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283189 --- Comment #4 from Konstantin Belousov <kib@FreeBSD.org> --- Sorry for the delay. My first question is, what are the small writes to the nvme devices, at all? If it is filesystem write, it must be of the DEV_BSIZE (512) size at least. Then, indeed DMAR spec allows for the non-coherent page tables walks from the iommu, see DMAR_ECAP_C bit in the ecap register. It would be useful to see the cap/ecap reports from the driver. Another potential issue might be a missed IOTLB invalidation command, or some bug with the invalidation command. The reason to theorize about it is that the issue happens only after relatively long uptime, where it is possible that we wrap around the guest address space allocation, and then it might be that stale IOTLB entry is not flushed. But this is unlikely IMO. Did you matched the bus (GAS) address for PRP1 against the address from the DMAR fault reports? -- You are receiving this mail because: You are the assignee for the bug.