summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorAndrew Schultz <alschult@umich.edu>2004-02-15 16:33:16 -0500
committerAndrew Schultz <alschult@umich.edu>2004-02-15 16:33:16 -0500
commit9984412671f2658988217d9745925da019e401a3 (patch)
treed815b2350453c25e548103899667c35b56b7cd14 /arch
parent092ec1978d3e1f01e9d1d6ce6f892c101f525682 (diff)
downloadgem5-9984412671f2658988217d9745925da019e401a3.tar.xz
Fix bug with physical address translation
--HG-- extra : convert_revision : 2bfc338decdceaaf57f4a391b93882a8e0715a56
Diffstat (limited to 'arch')
-rw-r--r--arch/alpha/alpha_memory.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/alpha/alpha_memory.cc b/arch/alpha/alpha_memory.cc
index 00e97250f..401dc21ec 100644
--- a/arch/alpha/alpha_memory.cc
+++ b/arch/alpha/alpha_memory.cc
@@ -455,7 +455,7 @@ AlphaDtb::translate(MemReqPtr &req, bool write) const
}
// verify that this is a good virtual address
- if (!validVirtualAddress(req->vaddr)) {
+ if (!(req->flags & PHYSICAL) && !validVirtualAddress(req->vaddr)) {
fault(req->vaddr,
((write ? MM_STAT_WR_MASK : 0) | MM_STAT_BAD_VA_MASK |
MM_STAT_ACV_MASK),