提交 49b92050 编写于 作者: R Rusty Russell

cpumask: use mm_cpumask() wrapper: m32r

Makes code futureproof against the impending change to mm->cpu_vm_mask.

It's also a chance to use the new cpumask_ ops which take a pointer
(the older ones are deprecated, but there's no hurry for arch code).
Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
Acked-by: Hirokazu Takata <takata@linux-m32r.org> (fixes)
上级 56f8ba83
...@@ -127,7 +127,7 @@ static inline void switch_mm(struct mm_struct *prev, ...@@ -127,7 +127,7 @@ static inline void switch_mm(struct mm_struct *prev,
if (prev != next) { if (prev != next) {
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
cpu_set(cpu, next->cpu_vm_mask); cpumask_set_cpu(cpu, mm_cpumask(next));
#endif /* CONFIG_SMP */ #endif /* CONFIG_SMP */
/* Set MPTB = next->pgd */ /* Set MPTB = next->pgd */
*(volatile unsigned long *)MPTB = (unsigned long)next->pgd; *(volatile unsigned long *)MPTB = (unsigned long)next->pgd;
...@@ -135,7 +135,7 @@ static inline void switch_mm(struct mm_struct *prev, ...@@ -135,7 +135,7 @@ static inline void switch_mm(struct mm_struct *prev,
} }
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
else else
if (!cpu_test_and_set(cpu, next->cpu_vm_mask)) if (!cpumask_test_and_set_cpu(cpu, mm_cpumask(next)))
activate_context(next); activate_context(next);
#endif /* CONFIG_SMP */ #endif /* CONFIG_SMP */
} }
......
...@@ -264,7 +264,7 @@ void smp_flush_tlb_mm(struct mm_struct *mm) ...@@ -264,7 +264,7 @@ void smp_flush_tlb_mm(struct mm_struct *mm)
preempt_disable(); preempt_disable();
cpu_id = smp_processor_id(); cpu_id = smp_processor_id();
mmc = &mm->context[cpu_id]; mmc = &mm->context[cpu_id];
cpu_mask = mm->cpu_vm_mask; cpu_mask = *mm_cpumask(mm);
cpu_clear(cpu_id, cpu_mask); cpu_clear(cpu_id, cpu_mask);
if (*mmc != NO_CONTEXT) { if (*mmc != NO_CONTEXT) {
...@@ -273,7 +273,7 @@ void smp_flush_tlb_mm(struct mm_struct *mm) ...@@ -273,7 +273,7 @@ void smp_flush_tlb_mm(struct mm_struct *mm)
if (mm == current->mm) if (mm == current->mm)
activate_context(mm); activate_context(mm);
else else
cpu_clear(cpu_id, mm->cpu_vm_mask); cpumask_clear_cpu(cpu_id, mm_cpumask(mm));
local_irq_restore(flags); local_irq_restore(flags);
} }
if (!cpus_empty(cpu_mask)) if (!cpus_empty(cpu_mask))
...@@ -334,7 +334,7 @@ void smp_flush_tlb_page(struct vm_area_struct *vma, unsigned long va) ...@@ -334,7 +334,7 @@ void smp_flush_tlb_page(struct vm_area_struct *vma, unsigned long va)
preempt_disable(); preempt_disable();
cpu_id = smp_processor_id(); cpu_id = smp_processor_id();
mmc = &mm->context[cpu_id]; mmc = &mm->context[cpu_id];
cpu_mask = mm->cpu_vm_mask; cpu_mask = *mm_cpumask(mm);
cpu_clear(cpu_id, cpu_mask); cpu_clear(cpu_id, cpu_mask);
#ifdef DEBUG_SMP #ifdef DEBUG_SMP
...@@ -469,7 +469,7 @@ void smp_invalidate_interrupt(void) ...@@ -469,7 +469,7 @@ void smp_invalidate_interrupt(void)
if (flush_mm == current->active_mm) if (flush_mm == current->active_mm)
activate_context(flush_mm); activate_context(flush_mm);
else else
cpu_clear(cpu_id, flush_mm->cpu_vm_mask); cpumask_clear_cpu(cpu_id, mm_cpumask(flush_mm));
} else { } else {
unsigned long va = flush_va; unsigned long va = flush_va;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册