]> err.no Git - linux-2.6/blobdiff - arch/powerpc/platforms/cell/spu_base.c
Pull thermal into release branch
[linux-2.6] / arch / powerpc / platforms / cell / spu_base.c
index 8086eb1ed60d95e85ab47d5e17aca84854855e7d..a7f5a7653c62e19149fd9d8865d6e0bc2c3aa890 100644 (file)
@@ -43,7 +43,7 @@ const struct spu_priv1_ops *spu_priv1_ops;
 static struct list_head spu_list[MAX_NUMNODES];
 static LIST_HEAD(spu_full_list);
 static DEFINE_MUTEX(spu_mutex);
-static spinlock_t spu_list_lock = SPIN_LOCK_UNLOCKED;
+static DEFINE_SPINLOCK(spu_list_lock);
 
 EXPORT_SYMBOL_GPL(spu_priv1_ops);
 
@@ -144,12 +144,11 @@ static int __spu_trap_data_seg(struct spu *spu, unsigned long ea)
 
        switch(REGION_ID(ea)) {
        case USER_REGION_ID:
-#ifdef CONFIG_HUGETLB_PAGE
-               if (in_hugepage_area(mm->context, ea))
-                       psize = mmu_huge_psize;
-               else
+#ifdef CONFIG_PPC_MM_SLICES
+               psize = get_slice_psize(mm, ea);
+#else
+               psize = mm->context.user_psize;
 #endif
-                       psize = mm->context.user_psize;
                vsid = (get_vsid(mm->context.id, ea) << SLB_VSID_SHIFT) |
                                SLB_VSID_USER;
                break;