Re: [PATCH 4/4] Bug Fix drivers/pci/intel-iommu.c: convert pfn_loto VTD page address when calling iommu_flush_dev_iotlb()

From: David Woodhouse
Date: Wed Aug 05 2009 - 04:20:16 EST


On Tue, 2009-08-04 at 15:11 -0700, Fenghua Yu wrote:
> The iova->pfn_lo should be converted to VTD page address before it's passed to
> iommu_flush_dev_iotlb().
>
> This issue may cause DMA failure on PAGE_SIZE>VTD_PAGE_SIZE platforms e.g. ia64
> platforms.
>
> Signed-off-by: Fenghua Yu <fenghua.yu@xxxxxxxxx>

I think this one is wrong. We allocate IOVA space in MM pages, not DMA
pages -- so the pfn_lo is an MM page already, and shifting by PAGE_SHIFT
is the right thing to do.

(I could be tempted to allocate it in DMA pages instead, but that's a
different story).

--
David Woodhouse Open Source Technology Centre
David.Woodhouse@xxxxxxxxx Intel Corporation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/