Index: linux/arch/x86_64/kernel/pci-gart.c =================================================================== RCS file: /home/cvs/Repository/linux/arch/x86_64/kernel/pci-gart.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -u -r1.30 -r1.31 --- linux/arch/x86_64/kernel/pci-gart.c 13 Jan 2004 09:09:32 -0000 1.30 +++ linux/arch/x86_64/kernel/pci-gart.c 17 Feb 2004 21:49:50 -0000 1.31 @@ -220,7 +220,7 @@ unsigned long iommu_page; size = round_up(size, PAGE_SIZE); - if (bus >= iommu_bus_base && bus <= iommu_bus_base + iommu_size) { + if (bus >= iommu_bus_base && bus < iommu_bus_base + iommu_size) { unsigned pages = size >> PAGE_SHIFT; iommu_page = (bus - iommu_bus_base) >> PAGE_SHIFT; vaddr = __va(GPTE_DECODE(iommu_gatt_base[iommu_page])); @@ -353,7 +353,7 @@ unsigned long iommu_page; int npages; if (dma_addr < iommu_bus_base + EMERGENCY_PAGES*PAGE_SIZE || - dma_addr > iommu_bus_base + iommu_size) + dma_addr >= iommu_bus_base + iommu_size) return; iommu_page = (dma_addr - iommu_bus_base)>>PAGE_SHIFT; npages = round_up(size + (dma_addr & ~PAGE_MASK), PAGE_SIZE) >> PAGE_SHIFT;