mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 08:26:59 +00:00
tile: replace mm->cpu_vm_mask with mm_cpumask()
We plan to change mm->cpu_vm_mask definition later. Thus, this patch convert it into proper macro. Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
This commit is contained in:
parent
ef0aaf873e
commit
dc0b124d8e
2 changed files with 8 additions and 8 deletions
|
@ -100,8 +100,8 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
|
||||||
__get_cpu_var(current_asid) = asid;
|
__get_cpu_var(current_asid) = asid;
|
||||||
|
|
||||||
/* Clear cpu from the old mm, and set it in the new one. */
|
/* Clear cpu from the old mm, and set it in the new one. */
|
||||||
cpumask_clear_cpu(cpu, &prev->cpu_vm_mask);
|
cpumask_clear_cpu(cpu, mm_cpumask(prev));
|
||||||
cpumask_set_cpu(cpu, &next->cpu_vm_mask);
|
cpumask_set_cpu(cpu, mm_cpumask(next));
|
||||||
|
|
||||||
/* Re-load page tables */
|
/* Re-load page tables */
|
||||||
install_page_table(next->pgd, asid);
|
install_page_table(next->pgd, asid);
|
||||||
|
|
|
@ -34,13 +34,13 @@ void flush_tlb_mm(struct mm_struct *mm)
|
||||||
{
|
{
|
||||||
HV_Remote_ASID asids[NR_CPUS];
|
HV_Remote_ASID asids[NR_CPUS];
|
||||||
int i = 0, cpu;
|
int i = 0, cpu;
|
||||||
for_each_cpu(cpu, &mm->cpu_vm_mask) {
|
for_each_cpu(cpu, mm_cpumask(mm)) {
|
||||||
HV_Remote_ASID *asid = &asids[i++];
|
HV_Remote_ASID *asid = &asids[i++];
|
||||||
asid->y = cpu / smp_topology.width;
|
asid->y = cpu / smp_topology.width;
|
||||||
asid->x = cpu % smp_topology.width;
|
asid->x = cpu % smp_topology.width;
|
||||||
asid->asid = per_cpu(current_asid, cpu);
|
asid->asid = per_cpu(current_asid, cpu);
|
||||||
}
|
}
|
||||||
flush_remote(0, HV_FLUSH_EVICT_L1I, &mm->cpu_vm_mask,
|
flush_remote(0, HV_FLUSH_EVICT_L1I, mm_cpumask(mm),
|
||||||
0, 0, 0, NULL, asids, i);
|
0, 0, 0, NULL, asids, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,8 +54,8 @@ void flush_tlb_page_mm(const struct vm_area_struct *vma, struct mm_struct *mm,
|
||||||
{
|
{
|
||||||
unsigned long size = hv_page_size(vma);
|
unsigned long size = hv_page_size(vma);
|
||||||
int cache = (vma->vm_flags & VM_EXEC) ? HV_FLUSH_EVICT_L1I : 0;
|
int cache = (vma->vm_flags & VM_EXEC) ? HV_FLUSH_EVICT_L1I : 0;
|
||||||
flush_remote(0, cache, &mm->cpu_vm_mask,
|
flush_remote(0, cache, mm_cpumask(mm),
|
||||||
va, size, size, &mm->cpu_vm_mask, NULL, 0);
|
va, size, size, mm_cpumask(mm), NULL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void flush_tlb_page(const struct vm_area_struct *vma, unsigned long va)
|
void flush_tlb_page(const struct vm_area_struct *vma, unsigned long va)
|
||||||
|
@ -70,8 +70,8 @@ void flush_tlb_range(const struct vm_area_struct *vma,
|
||||||
unsigned long size = hv_page_size(vma);
|
unsigned long size = hv_page_size(vma);
|
||||||
struct mm_struct *mm = vma->vm_mm;
|
struct mm_struct *mm = vma->vm_mm;
|
||||||
int cache = (vma->vm_flags & VM_EXEC) ? HV_FLUSH_EVICT_L1I : 0;
|
int cache = (vma->vm_flags & VM_EXEC) ? HV_FLUSH_EVICT_L1I : 0;
|
||||||
flush_remote(0, cache, &mm->cpu_vm_mask, start, end - start, size,
|
flush_remote(0, cache, mm_cpumask(mm), start, end - start, size,
|
||||||
&mm->cpu_vm_mask, NULL, 0);
|
mm_cpumask(mm), NULL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void flush_tlb_all(void)
|
void flush_tlb_all(void)
|
||||||
|
|
Loading…
Reference in a new issue