]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/sparc/mm/init_64.c
sparc64: reset mm cpumask after wrap
[karo-tx-linux.git] / arch / sparc / mm / init_64.c
index 0cda653ae007645fa01f05b4c40518332159a6ac..f8e30a3906bea1681c830d76da256c03cc8cc755 100644 (file)
@@ -358,7 +358,8 @@ static int __init setup_hugepagesz(char *string)
        }
 
        if ((hv_pgsz_mask & cpu_pgsz_mask) == 0U) {
-               pr_warn("hugepagesz=%llu not supported by MMU.\n",
+               hugetlb_bad_size();
+               pr_err("hugepagesz=%llu not supported by MMU.\n",
                        hugepage_size);
                goto out;
        }
@@ -758,6 +759,8 @@ void get_new_mmu_context(struct mm_struct *mm)
                        goto out;
                }
        }
+       if (mm->context.sparc64_ctx_val)
+               cpumask_clear(mm_cpumask(mm));
        mmu_context_bmap[new_ctx>>6] |= (1UL << (new_ctx & 63));
        new_ctx |= (tlb_context_cache & CTX_VERSION_MASK);
 out: