Messages in this thread | | | Subject | Re: [PATCH 4/4] Bug Fix drivers/pci/intel-iommu.c: convert pfn_lo to VTD page address when calling iommu_flush_dev_iotlb() | From | David Woodhouse <> | Date | Wed, 05 Aug 2009 09:19:59 +0100 |
| |
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@intel.com>
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@intel.com Intel Corporation
| |