aboutsummaryrefslogtreecommitdiff
path: root/src/supervisor.tex
diff options
context:
space:
mode:
Diffstat (limited to 'src/supervisor.tex')
-rw-r--r--src/supervisor.tex13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/supervisor.tex b/src/supervisor.tex
index d10cf0a..3bd0c8b 100644
--- a/src/supervisor.tex
+++ b/src/supervisor.tex
@@ -1119,6 +1119,19 @@ X & W & R & Meaning \\
\label{pteperm}
\end{table*}
+Attempting to fetch an instruction from a page that does not have execute
+permissions raises a fetch page-fault exception. Attempting to execute
+a load or load-reserved instruction whose effective address lies within
+a page without read permissions raises a load page-fault exception.
+Attempting to execute a store, store-conditional (regardless of success),
+or AMO instruction whose effective address lies within a page without
+write permissions raises a store page-fault exception.
+\begin{commentary}
+AMOs never raise load page-fault exceptions. Since any unreadable page is
+also unwritable, attempting to perform an AMO on an unreadable page always
+raises a store page-fault exception.
+\end{commentary}
+
The U bit indicates whether the page is accessible to user mode.
U-mode software may only access the page when U=1. If the SUM bit
in the {\tt sstatus} register is