projects
/
gem5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
cb76111
)
ARM: Finish the timing translation when taking a fault.
author
Min Kyu Jeong
<minkyu.jeong@arm.com>
Mon, 23 Aug 2010 16:18:39 +0000
(11:18 -0500)
committer
Min Kyu Jeong
<minkyu.jeong@arm.com>
Mon, 23 Aug 2010 16:18:39 +0000
(11:18 -0500)
src/arch/arm/table_walker.cc
patch
|
blob
|
history
diff --git
a/src/arch/arm/table_walker.cc
b/src/arch/arm/table_walker.cc
index 468c19f7538d06f9cc1ef4ba51ea4bee1ab28e0f..9e792845c476363cc0c6fe859f323a07d74d0392 100644
(file)
--- a/
src/arch/arm/table_walker.cc
+++ b/
src/arch/arm/table_walker.cc
@@
-145,9
+145,15
@@
TableWalker::walk(RequestPtr _req, ThreadContext *_tc, uint8_t _cid, TLB::Mode _
f = tlb->walkTrickBoxCheck(l1desc_addr, currState->vaddr, sizeof(uint32_t),
currState->isFetch, currState->isWrite, 0, true);
if (f) {
- currState->tc = NULL;
- currState->req = NULL;
- return f;
+ if (currState->timing) {
+ currState->transState->finish(f, currState->req,
+ currState->tc, currState->mode);
+ currState = NULL;
+ } else {
+ currState->tc = NULL;
+ currState->req = NULL;
+ }
+ return f;
}
if (currState->timing) {