Browse Source

sh: make MMU-specific SMP code conditional on CONFIG_MMU

This is a prerequisite for adding NOMMU SMP support.

Signed-off-by: Rich Felker <dalias@libc.org>
Rich Felker 9 years ago
parent
commit
5f2cb34d03
1 changed files with 8 additions and 0 deletions
  1. 8 0
      arch/sh/kernel/smp.c

+ 8 - 0
arch/sh/kernel/smp.c

@@ -150,7 +150,9 @@ int __cpu_disable(void)
 	 * from the vm mask set of all processes.
 	 */
 	flush_cache_all();
+#ifdef CONFIG_MMU
 	local_flush_tlb_all();
+#endif
 
 	clear_tasks_mm_cpumask(cpu);
 
@@ -183,8 +185,10 @@ asmlinkage void start_secondary(void)
 	atomic_inc(&mm->mm_count);
 	atomic_inc(&mm->mm_users);
 	current->active_mm = mm;
+#ifdef CONFIG_MMU
 	enter_lazy_tlb(mm, current);
 	local_flush_tlb_all();
+#endif
 
 	per_cpu_trap_init();
 
@@ -328,6 +332,8 @@ int setup_profiling_timer(unsigned int multiplier)
 	return 0;
 }
 
+#ifdef CONFIG_MMU
+
 static void flush_tlb_all_ipi(void *info)
 {
 	local_flush_tlb_all();
@@ -467,3 +473,5 @@ void flush_tlb_one(unsigned long asid, unsigned long vaddr)
 	smp_call_function(flush_tlb_one_ipi, (void *)&fd, 1);
 	local_flush_tlb_one(asid, vaddr);
 }
+
+#endif