[SPARC64]: Fix >8K I/O mappings.
authorDavid S. Miller <davem@davemloft.net>
Tue, 29 Nov 2005 21:59:03 +0000 (13:59 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Nov 2005 21:59:03 +0000 (13:59 -0800)
Increment the PFN field of the PTE so that the tests
on vm_pfn in mm/memory.c match up.  The TLB ignores these
lower bits for larger page sizes, so it's OK to set things
like this.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/mm/generic.c

index d9396c1721cdd3d67e11ab2ec9b5c5174a096a4b..580b63da836bcee565fb435b6f833ac6f1eb9b70 100644 (file)
@@ -77,6 +77,7 @@ static inline void io_remap_pte_range(struct mm_struct *mm, pte_t * pte,
                        BUG_ON(!pte_none(*pte));
                        set_pte_at(mm, address, pte, entry);
                        address += PAGE_SIZE;
+                       pte_val(entry) += PAGE_SIZE;
                        pte++;
                } while (address < curend);
        } while (address < end);