[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <797e3d1cd06dfc98cca0b595a738d297e9e858be.camel@wdc.com>
Date: Tue, 20 Aug 2019 00:02:31 +0000
From: Atish Patra <Atish.Patra@....com>
To: "anup@...infault.org" <anup@...infault.org>,
"hch@...radead.org" <hch@...radead.org>
CC: "linux-riscv@...ts.infradead.org" <linux-riscv@...ts.infradead.org>,
Anup Patel <Anup.Patel@....com>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"paul.walmsley@...ive.com" <paul.walmsley@...ive.com>,
"aou@...s.berkeley.edu" <aou@...s.berkeley.edu>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"allison@...utok.net" <allison@...utok.net>,
"alexios.zavras@...el.com" <alexios.zavras@...el.com>,
"palmer@...ive.com" <palmer@...ive.com>
Subject: Re: [PATCH] RISC-V: Issue a local tlb flush if possible.
On Mon, 2019-08-19 at 08:10 -0700, hch@...radead.org wrote:
> On Mon, Aug 19, 2019 at 08:39:02PM +0530, Anup Patel wrote:
> > If we were using ASID then yes we don't need to flush anything
> > but currently we don't use ASID due to lack of HW support and
> > HW can certainly do speculatively page table walks so flushing
> > local TLB when MM mask is empty might help.
> >
> > This just my theory and we need to stress test more.
>
> Well, when we context switch away from a mm we always flush the
> local tlb. So either the mm_struct has never been scheduled in,
Looking at the stack dump, it looks like this is the case. cpumask is
empty possibly after a fork/exec situation where forked child is being
replaced with actual program that is about to run.
I also looked at x86 & powerpc implementation which doesn't seem to do
anything special if cpumask is empty.
I will send a v2 with no tlb flushing if cpumask is empty.
> or we alrady did a local_tlb_flush and we context switched it up.
Regards,
Atish
Powered by blists - more mailing lists