Messages in this thread | | | Date | Thu, 22 Aug 2019 03:51:13 +0200 | From | Christoph Hellwig <> | Subject | Re: [PATCH v3 3/3] RISC-V: Do not invoke SBI call if cpumask is empty |
| |
On Wed, Aug 21, 2019 at 05:46:44PM -0700, Atish Patra wrote: > SBI calls are expensive. If cpumask is empty, there is no need to > trap via SBI as no remote tlb flushing is required. > > Signed-off-by: Atish Patra <atish.patra@wdc.com> > --- > arch/riscv/mm/tlbflush.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/arch/riscv/mm/tlbflush.c b/arch/riscv/mm/tlbflush.c > index 9f58b3790baa..2bd3c418d769 100644 > --- a/arch/riscv/mm/tlbflush.c > +++ b/arch/riscv/mm/tlbflush.c > @@ -21,6 +21,9 @@ static void __sbi_tlb_flush_range(struct cpumask *cmask, unsigned long start, > goto issue_sfence; > } > > + if (cpumask_empty(cmask)) > + goto done;
I think this can even be done before the get_cpu to optimize it a little further.
| |