summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/x86/pagetable.hh8
-rw-r--r--src/arch/x86/process.cc8
2 files changed, 5 insertions, 11 deletions
diff --git a/src/arch/x86/pagetable.hh b/src/arch/x86/pagetable.hh
index 354fb5a5c..490a2591b 100644
--- a/src/arch/x86/pagetable.hh
+++ b/src/arch/x86/pagetable.hh
@@ -179,14 +179,6 @@ namespace X86ISA
PTE.u = flags & PTE_Supervisor ? 0 : 1;
}
- /** returns the physical memory address of the page table */
- Addr getBasePtr(ThreadContext* tc)
- {
- CR3 cr3 = pageTablePhysAddr;
- DPRINTF(MMU, "CR3: %d\n", cr3);
- return cr3.longPdtb;
- }
-
/** returns the page number out of a page table entry */
Addr getPnum(PageTableEntry PTE)
{
diff --git a/src/arch/x86/process.cc b/src/arch/x86/process.cc
index 627750cbd..0a94ac417 100644
--- a/src/arch/x86/process.cc
+++ b/src/arch/x86/process.cc
@@ -100,9 +100,11 @@ X86Process::X86Process(ProcessParams *params, ObjectFile *objFile,
SyscallDesc *_syscallDescs, int _numSyscallDescs)
: Process(params, params->useArchPT ?
static_cast<EmulationPageTable *>(
- new ArchPageTable(params->name, params->pid,
- params->system, PageBytes,
- PageTableLayout)) :
+ new ArchPageTable(
+ params->name, params->pid,
+ params->system, PageBytes,
+ PageTableLayout,
+ pageTablePhysAddr >> PageShift)) :
new EmulationPageTable(params->name, params->pid,
PageBytes),
objFile),