[POWERPC] Remove get_property and device_is_compatible
[linux-2.6-block.git] / arch / powerpc / mm / mmu_context_64.c
index 90a06ac02d5e5f35f44adf4366cc016b473463ee..901ea765f14618ef2e469fa78eb5bb78b877b396 100644 (file)
@@ -49,10 +49,19 @@ again:
                return -ENOMEM;
        }
 
-       mm->context.id = index;
+#ifdef CONFIG_PPC_MM_SLICES
+       /* The old code would re-promote on fork, we don't do that
+        * when using slices as it could cause problem promoting slices
+        * that have been forced down to 4K
+        */
+       if (mm->context.id == 0)
+               slice_set_user_psize(mm, mmu_virtual_psize);
+#else
        mm->context.user_psize = mmu_virtual_psize;
        mm->context.sllp = SLB_VSID_USER |
                mmu_psize_defs[mmu_virtual_psize].sllp;
+#endif
+       mm->context.id = index;
 
        return 0;
 }