X86 TLB: Move a DPRINTF to its correct place
The DPRINTF for doing protection checks appears after the checks have been carried out. It is possible that the function returns while the checks are being carried, in which case the printf is missed out. This patch moves the DPRINTF before the checks. --HG-- extra : rebase_source : 172896057e593022444d882ea93323a5d9f77a89
This commit is contained in:
parent
ea94029ea5
commit
bd23a37198
1 changed files with 3 additions and 3 deletions
|
@ -328,6 +328,9 @@ TLB::translate(RequestPtr req, ThreadContext *tc, Translation *translation,
|
|||
DPRINTF(TLB, "Miss was serviced.\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
DPRINTF(TLB, "Entry found with paddr %#x, "
|
||||
"doing protection checks.\n", entry->paddr);
|
||||
// Do paging protection checks.
|
||||
bool inUser = (m5Reg.cpl == 3 &&
|
||||
!(flags & (CPL0FlagBit << FlagShift)));
|
||||
|
@ -345,9 +348,6 @@ TLB::translate(RequestPtr req, ThreadContext *tc, Translation *translation,
|
|||
return new PageFault(vaddr, true, Write, inUser, false);
|
||||
}
|
||||
|
||||
|
||||
DPRINTF(TLB, "Entry found with paddr %#x, "
|
||||
"doing protection checks.\n", entry->paddr);
|
||||
Addr paddr = entry->paddr | (vaddr & (entry->size-1));
|
||||
DPRINTF(TLB, "Translated %#x -> %#x.\n", vaddr, paddr);
|
||||
req->setPaddr(paddr);
|
||||
|
|
Loading…
Reference in a new issue