riscv: cleanup riscv_cpuid_to_hartid_mask
authorChristoph Hellwig <hch@lst.de>
Wed, 21 Aug 2019 14:58:35 +0000 (23:58 +0900)
committerPaul Walmsley <paul.walmsley@sifive.com>
Thu, 5 Sep 2019 08:51:57 +0000 (01:51 -0700)
Move the initial clearing of the mask from the callers to
riscv_cpuid_to_hartid_mask, and remove the unused !CONFIG_SMP stub.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com>
arch/riscv/include/asm/smp.h
arch/riscv/include/asm/tlbflush.h
arch/riscv/kernel/smp.c
arch/riscv/mm/cacheflush.c

index c6ed4d6..a83451d 100644 (file)
@@ -61,11 +61,5 @@ static inline unsigned long cpuid_to_hartid_map(int cpu)
        return boot_cpu_hartid;
 }
 
-static inline void riscv_cpuid_to_hartid_mask(const struct cpumask *in,
-                                             struct cpumask *out)
-{
-       cpumask_set_cpu(cpuid_to_hartid_map(0), out);
-}
-
 #endif /* CONFIG_SMP */
 #endif /* _ASM_RISCV_SMP_H */
index 4d9bbe8..df31fe2 100644 (file)
@@ -47,7 +47,6 @@ static inline void remote_sfence_vma(struct cpumask *cmask, unsigned long start,
 {
        struct cpumask hmask;
 
-       cpumask_clear(&hmask);
        riscv_cpuid_to_hartid_mask(cmask, &hmask);
        sbi_remote_sfence_vma(hmask.bits, start, size);
 }
index a3715d6..3836760 100644 (file)
@@ -56,6 +56,7 @@ void riscv_cpuid_to_hartid_mask(const struct cpumask *in, struct cpumask *out)
 {
        int cpu;
 
+       cpumask_clear(out);
        for_each_cpu(cpu, in)
                cpumask_set_cpu(cpuid_to_hartid_map(cpu), out);
 }
index 9ebcff8..3f15938 100644 (file)
@@ -47,7 +47,6 @@ void flush_icache_mm(struct mm_struct *mm, bool local)
        cpumask_andnot(&others, mm_cpumask(mm), cpumask_of(cpu));
        local |= cpumask_empty(&others);
        if (mm != current->active_mm || !local) {
-               cpumask_clear(&hmask);
                riscv_cpuid_to_hartid_mask(&others, &hmask);
                sbi_remote_fence_i(hmask.bits);
        } else {