summary |
tags |
clone url |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
2d98976)
SCCS-vsn: sys/i386/i386/locore.s 5.4
*
* %sccs.include.386.c%
*
*
* %sccs.include.386.c%
*
- * @(#)locore.s 5.3 (Berkeley) %G%
+ * @(#)locore.s 5.4 (Berkeley) %G%
movl %eax,0(%ebx) # which is where _u maps!
movl %edi,%eax # phys address of ptd in proc 0
movl %eax,0(%ebx) # which is where _u maps!
movl %edi,%eax # phys address of ptd in proc 0
movl %eax,%cr3 # load ptd addr into mmu
movl %cr0,%eax # get control word
orl $0x80000001,%eax # and let s page!
movl %eax,%cr3 # load ptd addr into mmu
movl %cr0,%eax # get control word
orl $0x80000001,%eax # and let s page!
_load_cr3:
_lcr3:
movl 4(%esp),%eax
_load_cr3:
_lcr3:
movl 4(%esp),%eax
movl %eax,%cr3
movl %cr3,%eax
ret
movl %eax,%cr3
movl %cr3,%eax
ret
movl 4(%edx),%eax
movl %eax,_Swtchmap+4
movl %cr3,%eax
movl 4(%edx),%eax
movl %eax,_Swtchmap+4
movl %cr3,%eax
movl %eax,%cr3
movl _Swtchbase+PCB_CR3,%edx
movl %eax,%cr3
movl _Swtchbase+PCB_CR3,%edx
movl _CMAP2,%eax # save temporary map PTE
movl %eax,PCB_CMAP2(%ecx) # in our context
movl _CMAP2,%eax # save temporary map PTE
movl %eax,PCB_CMAP2(%ecx) # in our context
movl %edx,%cr3 # context switch
movl $_u,%ecx
movl %edx,%cr3 # context switch
movl $_u,%ecx