[SPARC64]: make IOMMU code respect the segment boundary limits
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Thu, 21 Feb 2008 06:56:42 +0000 (22:56 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Feb 2008 06:56:42 +0000 (22:56 -0800)
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/iommu.c

index 0e347ff812a336da425cba8b10a411fd6425ad1a..fbaab3497bfdfa59b45f538e5b473f9bc0959d41 100644 (file)
@@ -134,7 +134,8 @@ unsigned long iommu_range_alloc(struct device *dev,
        else
                boundary_size = ALIGN(1UL << 32, 1 << IO_PAGE_SHIFT);
 
-       n = iommu_area_alloc(arena->map, limit, start, npages, 0,
+       n = iommu_area_alloc(arena->map, limit, start, npages,
+                            iommu->page_table_map_base >> IO_PAGE_SHIFT,
                             boundary_size >> IO_PAGE_SHIFT, 0);
        if (n == -1) {
                if (likely(pass < 1)) {