Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/arch/i386/i386/locore.S,v rcsdiff: /ftp/cvs/cvsroot/src/sys/arch/i386/i386/locore.S,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.82.4.2 retrieving revision 1.87 diff -u -p -r1.82.4.2 -r1.87 --- src/sys/arch/i386/i386/locore.S 2009/11/01 13:58:21 1.82.4.2 +++ src/sys/arch/i386/i386/locore.S 2009/05/04 11:47:29 1.87 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.82.4.2 2009/11/01 13:58:21 jym Exp $ */ +/* $NetBSD: locore.S,v 1.87 2009/05/04 11:47:29 ad Exp $ */ /* * Copyright-o-rama! @@ -15,6 +15,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by Manuel Bouyer. + * 4. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -129,7 +134,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.82.4.2 2009/11/01 13:58:21 jym Exp $"); +__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.87 2009/05/04 11:47:29 ad Exp $"); #include "opt_compat_oldboot.h" #include "opt_ddb.h" @@ -168,6 +173,7 @@ __KERNEL_RCSID(0, "$NetBSD: locore.S,v 1 * Xen guest identifier and loader selection */ .section __xen_guest +#ifdef XEN3 .ascii "GUEST_OS=netbsd,GUEST_VER=3.0,XEN_VER=xen-3.0" #if defined(DOM0OPS) || !defined(XEN_COMPAT_030001) .ascii ",VIRT_BASE=0xc0000000" /* KERNBASE */ @@ -184,6 +190,9 @@ __KERNEL_RCSID(0, "$NetBSD: locore.S,v 1 #ifdef PAE .ascii ",PAE=yes[extended-cr3]" #endif +#else /* !XEN3 */ + .ascii "GUEST_OS=netbsd,GUEST_VER=2.0,XEN_VER=2.0" +#endif /* XEN3 */ .ascii ",LOADER=generic" #if (NKSYMS || defined(DDB) || defined(MODULAR)) && !defined(SYMTAB_SPACE) .ascii ",BSD_SYMTAB=yes" @@ -718,7 +727,11 @@ start: popfl cld +#ifdef XEN3 movl %esp, %ebx # save start of available space +#else + movl %esi,%ebx # save start_info pointer +#endif movl $_RELOC(tmpstk),%esp # bootstrap stack end location /* Clear BSS first so that there are no surprises... */ @@ -766,13 +779,13 @@ start: addl $4,%esp call _C_LABEL(main) -#if defined(XEN) && !defined(XEN_COMPAT_030001) +#if defined(XEN3) && !defined(XEN_COMPAT_030001) /* space for the hypercall call page */ #define HYPERCALL_PAGE_OFFSET 0x1000 .org HYPERCALL_PAGE_OFFSET ENTRY(hypercall_page) .skip 0x1000 -#endif /* defined(XEN) && !defined(XEN_COMPAT_030001) */ +#endif /* defined(XEN3) && !defined(XEN_COMPAT_030001) */ /* * void lgdt_finish(void);