Merge ../linux-2.6 by hand
[linux-2.6.git] / arch / powerpc / mm / pgtable_64.c
index 484d24f9208bcf839b129249ab64d640c94bcf7b..b79a7820613558181d16a8d25dce4687e6a3c7e3 100644 (file)
@@ -104,7 +104,6 @@ static int map_io_page(unsigned long ea, unsigned long pa, int flags)
        unsigned long vsid;
 
        if (mem_init_done) {
-               spin_lock(&init_mm.page_table_lock);
                pgdp = pgd_offset_k(ea);
                pudp = pud_alloc(&init_mm, pgdp, ea);
                if (!pudp)
@@ -112,12 +111,11 @@ static int map_io_page(unsigned long ea, unsigned long pa, int flags)
                pmdp = pmd_alloc(&init_mm, pudp, ea);
                if (!pmdp)
                        return -ENOMEM;
-               ptep = pte_alloc_kernel(&init_mm, pmdp, ea);
+               ptep = pte_alloc_kernel(pmdp, ea);
                if (!ptep)
                        return -ENOMEM;
                set_pte_at(&init_mm, ea, ptep, pfn_pte(pa >> PAGE_SHIFT,
                                                          __pgprot(flags)));
-               spin_unlock(&init_mm.page_table_lock);
        } else {
                unsigned long va, vpn, hash, hpteg;