version 1.112.10.1, 2017/07/20 01:43:10 |
version 1.114, 2015/08/30 01:46:03 |
|
|
__KERNEL_RCSID(0, "$NetBSD$"); |
__KERNEL_RCSID(0, "$NetBSD$"); |
|
|
#include "opt_compat_oldboot.h" |
#include "opt_compat_oldboot.h" |
|
#include "opt_copy_symtab.h" |
#include "opt_ddb.h" |
#include "opt_ddb.h" |
#include "opt_modular.h" |
#include "opt_modular.h" |
#include "opt_multiboot.h" |
#include "opt_multiboot.h" |
Line 184 __KERNEL_RCSID(0, "$NetBSD$"); |
|
Line 185 __KERNEL_RCSID(0, "$NetBSD$"); |
|
.ascii ",PAE=yes[extended-cr3]" |
.ascii ",PAE=yes[extended-cr3]" |
#endif |
#endif |
.ascii ",LOADER=generic" |
.ascii ",LOADER=generic" |
#if (NKSYMS || defined(DDB) || defined(MODULAR)) && !defined(SYMTAB_SPACE) |
#if (NKSYMS || defined(DDB) || defined(MODULAR)) && !defined(makeoptions_COPY_SYMTAB) |
.ascii ",BSD_SYMTAB=yes" |
.ascii ",BSD_SYMTAB=yes" |
#endif |
#endif |
.byte 0 |
.byte 0 |
Line 544 try586: /* Use the `cpuid' instruction. |
|
Line 545 try586: /* Use the `cpuid' instruction. |
|
/* Find end of kernel image. */ |
/* Find end of kernel image. */ |
movl $RELOC(end),%edi |
movl $RELOC(end),%edi |
|
|
#if (NKSYMS || defined(DDB) || defined(MODULAR)) && !defined(SYMTAB_SPACE) |
#if (NKSYMS || defined(DDB) || defined(MODULAR)) && !defined(makeoptions_COPY_SYMTAB) |
/* Save the symbols (if loaded). */ |
/* Save the symbols (if loaded). */ |
movl RELOC(esym),%eax |
movl RELOC(esym),%eax |
testl %eax,%eax |
testl %eax,%eax |
|
|
END(savectx) |
END(savectx) |
|
|
/* |
/* |
|
* osyscall() |
|
* |
|
* Old call gate entry for syscall |
|
*/ |
|
IDTVEC(osyscall) |
|
#ifndef XEN |
|
/* XXX we are in trouble! interrupts be off here. */ |
|
cli # must be first instruction |
|
#endif |
|
pushfl # set eflags in trap frame |
|
popl 8(%esp) |
|
orl $PSL_I,8(%esp) # re-enable ints on return to user |
|
pushl $7 # size of instruction for restart |
|
jmp syscall1 |
|
IDTVEC_END(osyscall) |
|
|
|
/* |
* syscall() |
* syscall() |
* |
* |
* Trap gate entry for syscall |
* Trap gate entry for syscall |
*/ |
*/ |
IDTVEC(syscall) |
IDTVEC(syscall) |
pushl $2 # size of instruction for restart |
pushl $2 # size of instruction for restart |
|
syscall1: |
pushl $T_ASTFLT # trap # for doing ASTs |
pushl $T_ASTFLT # trap # for doing ASTs |
INTRENTRY |
INTRENTRY |
STI(%eax) |
STI(%eax) |