diff options
author | Robert Morris <[email protected]> | 2019-07-22 14:54:40 -0400 |
---|---|---|
committer | Robert Morris <[email protected]> | 2019-07-22 14:54:40 -0400 |
commit | 6b379e4707d693bb383f51647f66ec5471d26979 (patch) | |
tree | 95d319b7b3f0747dce88ce1583483cca7c13784e /kernel/proc.c | |
parent | 5eab649255edc210c1e05ae62d2cb6fd0f328d8c (diff) | |
download | xv6-labs-6b379e4707d693bb383f51647f66ec5471d26979.tar.gz xv6-labs-6b379e4707d693bb383f51647f66ec5471d26979.tar.bz2 xv6-labs-6b379e4707d693bb383f51647f66ec5471d26979.zip |
-MD and TRAPFRAME
Diffstat (limited to 'kernel/proc.c')
-rw-r--r-- | kernel/proc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/proc.c b/kernel/proc.c index b9babed..d10c952 100644 --- a/kernel/proc.c +++ b/kernel/proc.c @@ -156,8 +156,8 @@ proc_pagetable(struct proc *p) mappages(pagetable, TRAMPOLINE, PGSIZE, (uint64)trampout, PTE_R | PTE_X); - // map the trapframe, for trampoline.S. - mappages(pagetable, (TRAMPOLINE - PGSIZE), PGSIZE, + // map the trapframe just below TRAMPOLINE, for trampoline.S. + mappages(pagetable, TRAPFRAME, PGSIZE, (uint64)(p->tf), PTE_R | PTE_W); return pagetable; @@ -169,7 +169,7 @@ void proc_freepagetable(pagetable_t pagetable, uint64 sz) { unmappages(pagetable, TRAMPOLINE, PGSIZE, 0); - unmappages(pagetable, TRAMPOLINE-PGSIZE, PGSIZE, 0); + unmappages(pagetable, TRAPFRAME, PGSIZE, 0); if(sz > 0) uvmfree(pagetable, sz); } |