summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cpu/translation.hh5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cpu/translation.hh b/src/cpu/translation.hh
index c05cc86a0..46c96a0d4 100644
--- a/src/cpu/translation.hh
+++ b/src/cpu/translation.hh
@@ -255,8 +255,11 @@ class DataTranslation : public BaseTLB::Translation
assert(state);
assert(mode == state->mode);
if (state->finish(fault, index)) {
+ if (state->getFault() == NoFault) {
+ // Don't access the request if faulted (due to squash)
+ req->setTranslateLatency();
+ }
xc->finishTranslation(state);
- req->setTranslateLatency();
}
delete this;
}