Module Name: src Committed By: jym Date: Thu Jul 15 18:55:27 UTC 2010
Modified Files: src/sys/arch/i386/i386: locore.S Log Message: In Xen PAE case, fix argument size passed to init386(), by pushing the upper bits onto stack (we do not expect first_avail to be above 4GiB, so assume their value is 0). Remove macros (PROC0PDIR and PROC0STACK) that were never used. To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.92 src/sys/arch/i386/i386/locore.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/i386/i386/locore.S diff -u src/sys/arch/i386/i386/locore.S:1.91 src/sys/arch/i386/i386/locore.S:1.92 --- src/sys/arch/i386/i386/locore.S:1.91 Fri Nov 27 03:23:10 2009 +++ src/sys/arch/i386/i386/locore.S Thu Jul 15 18:55:27 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.91 2009/11/27 03:23:10 rmind Exp $ */ +/* $NetBSD: locore.S,v 1.92 2010/07/15 18:55:27 jym Exp $ */ /* * Copyright-o-rama! @@ -129,7 +129,7 @@ */ #include <machine/asm.h> -__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.91 2009/11/27 03:23:10 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.92 2010/07/15 18:55:27 jym Exp $"); #include "opt_compat_oldboot.h" #include "opt_ddb.h" @@ -746,24 +746,26 @@ movl %eax,RELOC(cpuid_level) call xen_pmap_bootstrap + /* * First avail returned by xen_pmap_bootstrap in %eax */ movl %eax, %esi; movl %esi, _C_LABEL(lwp0uarea) -#define PROC0PDIR ((0) * PAGE_SIZE) -#define PROC0STACK ((1) * PAGE_SIZE) - /* Set up bootstrap stack. */ leal (KSTACK_SIZE-FRAMESIZE)(%eax),%esp xorl %ebp,%ebp # mark end of frames addl $USPACE, %esi subl $KERNBASE, %esi #init386 want a physical address + +#ifdef PAE + pushl $0 # init386() expects a 64 bits paddr_t with PAE +#endif pushl %esi call _C_LABEL(init386) # wire 386 chip for unix operation - addl $4,%esp + addl $PDE_SIZE,%esp call _C_LABEL(main) #if defined(XEN) && !defined(XEN_COMPAT_030001)