diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2000-01-27 21:06:13 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2000-01-27 21:06:13 +0000 |
| commit | c299f41fd94ac69d50fe1bb6dbc005adbdaedf03 (patch) | |
| tree | f328e2cc59d1e67d82281c09156473a4ab93b029 | |
| parent | d3e00c127be160bbb6e70da66aada8b03245eb0d (diff) | |
Notes
| -rw-r--r-- | sys/boot/i386/btx/btx/btx.S | 4 | ||||
| -rw-r--r-- | sys/boot/i386/btx/btx/btx.s | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/boot/i386/btx/btx/btx.S b/sys/boot/i386/btx/btx/btx.S index c315b5675523..6a00f637a9c2 100644 --- a/sys/boot/i386/btx/btx/btx.S +++ b/sys/boot/i386/btx/btx/btx.S @@ -249,11 +249,11 @@ init.9: pushb $0x0 # general # exit: cli # Disable interrupts movl $MEM_ESP0,%esp # Clear stack -ifdef(`PAGING',` # # Turn off paging. # movl %cr0,%eax # Get CR0 +ifdef(`PAGING',` andl $~0x80000000,%eax # Disable movl %eax,%cr0 # paging ') @@ -800,11 +800,13 @@ intx30: cmpl $SYS_EXEC,%eax # Exec system call? movl $MEM_USR,%eax # User base address addl 0xc(%esp,1),%eax # Change to user leal 0x4(%eax),%esp # stack +ifdef(`PAGING',` movl %cr0,%eax # Turn andl $~0x80000000,%eax # off movl %eax,%cr0 # paging xorl %eax,%eax # Flush movl %eax,%cr3 # TLB +') popl %eax # Call call *%eax # program intx30.1: incb %ss:btx_hdr+0x7 # Flag reboot diff --git a/sys/boot/i386/btx/btx/btx.s b/sys/boot/i386/btx/btx/btx.s index c315b5675523..6a00f637a9c2 100644 --- a/sys/boot/i386/btx/btx/btx.s +++ b/sys/boot/i386/btx/btx/btx.s @@ -249,11 +249,11 @@ init.9: pushb $0x0 # general # exit: cli # Disable interrupts movl $MEM_ESP0,%esp # Clear stack -ifdef(`PAGING',` # # Turn off paging. # movl %cr0,%eax # Get CR0 +ifdef(`PAGING',` andl $~0x80000000,%eax # Disable movl %eax,%cr0 # paging ') @@ -800,11 +800,13 @@ intx30: cmpl $SYS_EXEC,%eax # Exec system call? movl $MEM_USR,%eax # User base address addl 0xc(%esp,1),%eax # Change to user leal 0x4(%eax),%esp # stack +ifdef(`PAGING',` movl %cr0,%eax # Turn andl $~0x80000000,%eax # off movl %eax,%cr0 # paging xorl %eax,%eax # Flush movl %eax,%cr3 # TLB +') popl %eax # Call call *%eax # program intx30.1: incb %ss:btx_hdr+0x7 # Flag reboot |
