From e554c939026818337038cf2ac91d9e24d494f820 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Fri, 21 Jun 2019 12:11:22 -0700 Subject: Need SFENCE after change to SBE --- src/machine.tex | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/machine.tex b/src/machine.tex index 010aafc..6c79e4c 100644 --- a/src/machine.tex +++ b/src/machine.tex @@ -752,6 +752,9 @@ accesses to such pages made from S-mode with {\tt sstatus}.SUM=1. For {\em implicit} accesses to supervisor-level memory management data structures, such as page tables, endianness is always controlled by SBE. +Since changing SBE alters the implementation's interpretation of these data +structures, M-mode software must follow a change to SBE by executing an +SFENCE.VMA instruction with {\em rs1}={\tt x0} and {\em rs2}={\tt x0}. If S-mode is supported, an implementation may hardwire SBE so that SBE=MBE. -- cgit v1.1