Hmm. Thinking about this we actually have 2 problems. - Communication about what is going on. - How to handle an iommu in the event of a crash dump scenario. The current solution is to ignore the iommu, and use swiotlb. This solution does not look like it will work for future iommus. The original plan (and it still sounds like a good one) was to reserve a section of the iommu (as we do for the physical memory). So we could have addresses that are only used for the crash dump kernel. Then have the crash dump kernel just use that section of the iommu. Either we need to do that or we need to disable the iommu, before we use swiotlb. The problem is we can not reliably kill on-going DMA transactions at the time of a kernel panic, and likely doing so would greatly decrease our kernel reliability. Eric