linux-riscv.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] RISC-V: Take a third shot at describing sfence.vma
@ 2019-06-18  6:12 Palmer Dabbelt
  0 siblings, 0 replies; only message in thread
From: Palmer Dabbelt @ 2019-06-18  6:12 UTC (permalink / raw)
  To: linux-riscv; +Cc: Palmer Dabbelt

This is the third iteration of this comment.  I've had the diff floating
around for a while since someone pointed out that the original version
didn't make any sense, but I forgot who pointed this out.

Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
---
 arch/riscv/include/asm/tlbflush.h | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/riscv/include/asm/tlbflush.h b/arch/riscv/include/asm/tlbflush.h
index 54fee0cadb1e..8fda8974d8c7 100644
--- a/arch/riscv/include/asm/tlbflush.h
+++ b/arch/riscv/include/asm/tlbflush.h
@@ -19,8 +19,9 @@
 #include <asm/smp.h>
 
 /*
- * Flush entire local TLB.  'sfence.vma' implicitly fences with the instruction
- * cache as well, so a 'fence.i' is not necessary.
+ * Flush entire local TLB.  'sfence.vma' enforces that all subsequent memory
+ * accesses, both from the instruction and data streams, respect all previously
+ * installed mappings.  Thus we do not need a fence.i here.
  */
 static inline void local_flush_tlb_all(void)
 {
-- 
2.21.0


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2019-06-18  6:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-18  6:12 [PATCH] RISC-V: Take a third shot at describing sfence.vma Palmer Dabbelt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).