diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2009-02-23 00:20:34 -0800 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2009-02-23 00:20:34 -0800 |
commit | e8c1c3e72eb01409f7ec110eee3b32c07347bf6f (patch) | |
tree | 26f23b24fdfdfff630cda342e94d055437f9d5f8 /src/arch/x86/pagetable_walker.hh | |
parent | 6c5afe6346b31edf6af245002c270a3c26618833 (diff) | |
download | gem5-e8c1c3e72eb01409f7ec110eee3b32c07347bf6f.tar.xz |
X86: Pass whether an access was a read/write/fetch so faults can behave accordingly.
Diffstat (limited to 'src/arch/x86/pagetable_walker.hh')
-rw-r--r-- | src/arch/x86/pagetable_walker.hh | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/arch/x86/pagetable_walker.hh b/src/arch/x86/pagetable_walker.hh index 324f16f3c..de3f21195 100644 --- a/src/arch/x86/pagetable_walker.hh +++ b/src/arch/x86/pagetable_walker.hh @@ -95,7 +95,7 @@ namespace X86ISA void doNext(PacketPtr &read, PacketPtr &write); // Kick off the state machine. - void start(ThreadContext * _tc, Addr vaddr); + void start(ThreadContext * _tc, Addr vaddr, bool write, bool execute); protected: @@ -165,7 +165,10 @@ namespace X86ISA State nextState; int size; bool enableNX; + bool write, execute; TlbEntry entry; + + Fault pageFault(bool present); public: |