Module Name:    src
Committed By:   riastradh
Date:           Sat Aug 20 23:15:37 UTC 2022

Modified Files:
        src/sys/arch/amd64/amd64: machdep.c
        src/sys/arch/amd64/include: asan.h
        src/sys/arch/i386/i386: machdep.c
        src/sys/arch/x86/include: pmap.h
        src/sys/arch/x86/x86: db_memrw.c patch.c pmap.c x86_machdep.c
Added Files:
        src/sys/arch/x86/include: bootspace.h

Log Message:
x86: Split bootspace out of x86/pmap.h into new x86/bootspace.h.


To generate a diff of this commit:
cvs rdiff -u -r1.361 -r1.362 src/sys/arch/amd64/amd64/machdep.c
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/amd64/include/asan.h
cvs rdiff -u -r1.835 -r1.836 src/sys/arch/i386/i386/machdep.c
cvs rdiff -u -r0 -r1.1 src/sys/arch/x86/include/bootspace.h
cvs rdiff -u -r1.129 -r1.130 src/sys/arch/x86/include/pmap.h
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/x86/x86/db_memrw.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/x86/x86/patch.c
cvs rdiff -u -r1.416 -r1.417 src/sys/arch/x86/x86/pmap.c
cvs rdiff -u -r1.150 -r1.151 src/sys/arch/x86/x86/x86_machdep.c

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/amd64/amd64/machdep.c
diff -u src/sys/arch/amd64/amd64/machdep.c:1.361 src/sys/arch/amd64/amd64/machdep.c:1.362
--- src/sys/arch/amd64/amd64/machdep.c:1.361	Sun Dec 26 21:33:48 2021
+++ src/sys/arch/amd64/amd64/machdep.c	Sat Aug 20 23:15:36 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.361 2021/12/26 21:33:48 riastradh Exp $	*/
+/*	$NetBSD: machdep.c,v 1.362 2022/08/20 23:15:36 riastradh Exp $	*/
 
 /*
  * Copyright (c) 1996, 1997, 1998, 2000, 2006, 2007, 2008, 2011
@@ -110,7 +110,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.361 2021/12/26 21:33:48 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.362 2022/08/20 23:15:36 riastradh Exp $");
 
 #include "opt_modular.h"
 #include "opt_user_ldt.h"
@@ -183,6 +183,7 @@ __KERNEL_RCSID(0, "$NetBSD: machdep.c,v 
 #include <machine/mtrr.h>
 #include <machine/mpbiosvar.h>
 
+#include <x86/bootspace.h>
 #include <x86/cputypes.h>
 #include <x86/cpuvar.h>
 #include <x86/machdep.h>

Index: src/sys/arch/amd64/include/asan.h
diff -u src/sys/arch/amd64/include/asan.h:1.9 src/sys/arch/amd64/include/asan.h:1.10
--- src/sys/arch/amd64/include/asan.h:1.9	Thu Sep 10 14:10:46 2020
+++ src/sys/arch/amd64/include/asan.h	Sat Aug 20 23:15:36 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: asan.h,v 1.9 2020/09/10 14:10:46 maxv Exp $	*/
+/*	$NetBSD: asan.h,v 1.10 2022/08/20 23:15:36 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2018-2020 Maxime Villard, m00nbsd.net
@@ -35,6 +35,8 @@
 #include <amd64/pmap.h>
 #include <amd64/vmparam.h>
 
+#include <x86/bootspace.h>
+
 #ifdef __HAVE_PCPU_AREA
 #error "PCPU area not allowed with KASAN"
 #endif

Index: src/sys/arch/i386/i386/machdep.c
diff -u src/sys/arch/i386/i386/machdep.c:1.835 src/sys/arch/i386/i386/machdep.c:1.836
--- src/sys/arch/i386/i386/machdep.c:1.835	Tue May 31 18:04:11 2022
+++ src/sys/arch/i386/i386/machdep.c	Sat Aug 20 23:15:36 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.835 2022/05/31 18:04:11 bouyer Exp $	*/
+/*	$NetBSD: machdep.c,v 1.836 2022/08/20 23:15:36 riastradh Exp $	*/
 
 /*
  * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009, 2017
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.835 2022/05/31 18:04:11 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.836 2022/08/20 23:15:36 riastradh Exp $");
 
 #include "opt_beep.h"
 #include "opt_compat_freebsd.h"
@@ -136,6 +136,7 @@ __KERNEL_RCSID(0, "$NetBSD: machdep.c,v 
 #include <machine/mtrr.h>
 #include <x86/x86/tsc.h>
 
+#include <x86/bootspace.h>
 #include <x86/fpu.h>
 #include <x86/dbregs.h>
 #include <x86/machdep.h>

Index: src/sys/arch/x86/include/pmap.h
diff -u src/sys/arch/x86/include/pmap.h:1.129 src/sys/arch/x86/include/pmap.h:1.130
--- src/sys/arch/x86/include/pmap.h:1.129	Sat Aug 20 23:13:51 2022
+++ src/sys/arch/x86/include/pmap.h	Sat Aug 20 23:15:37 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.129 2022/08/20 23:13:51 riastradh Exp $	*/
+/*	$NetBSD: pmap.h,v 1.130 2022/08/20 23:15:37 riastradh Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -115,49 +115,6 @@
 #include <x86/pmap_pv.h>
 #include <uvm/pmap/pmap_pvt.h>
 
-#define BTSEG_NONE	0
-#define BTSEG_TEXT	1
-#define BTSEG_RODATA	2
-#define BTSEG_DATA	3
-#define BTSPACE_NSEGS	64
-
-struct bootspace {
-	struct {
-		vaddr_t va;
-		paddr_t pa;
-		size_t sz;
-	} head;
-
-	/* Kernel segments. */
-	struct {
-		int type;
-		vaddr_t va;
-		paddr_t pa;
-		size_t sz;
-	} segs[BTSPACE_NSEGS];
-
-	/*
-	 * The area used by the early kernel bootstrap. It contains the kernel
-	 * symbols, the preloaded modules, the bootstrap tables, and the ISA I/O
-	 * mem.
-	 */
-	struct {
-		vaddr_t va;
-		paddr_t pa;
-		size_t sz;
-	} boot;
-
-	/* A magic VA usable by the bootstrap code. */
-	vaddr_t spareva;
-
-	/* Virtual address of the page directory. */
-	vaddr_t pdir;
-
-	/* Area dedicated to kernel modules (amd64 only). */
-	vaddr_t smodule;
-	vaddr_t emodule;
-};
-
 #define SLAREA_USER	0
 #define SLAREA_PTE	1
 #define SLAREA_MAIN	2

Index: src/sys/arch/x86/x86/db_memrw.c
diff -u src/sys/arch/x86/x86/db_memrw.c:1.12 src/sys/arch/x86/x86/db_memrw.c:1.13
--- src/sys/arch/x86/x86/db_memrw.c:1.12	Thu Oct  7 12:52:27 2021
+++ src/sys/arch/x86/x86/db_memrw.c	Sat Aug 20 23:15:37 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: db_memrw.c,v 1.12 2021/10/07 12:52:27 msaitoh Exp $	*/
+/*	$NetBSD: db_memrw.c,v 1.13 2022/08/20 23:15:37 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 1996, 2000 The NetBSD Foundation, Inc.
@@ -53,7 +53,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_memrw.c,v 1.12 2021/10/07 12:52:27 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_memrw.c,v 1.13 2022/08/20 23:15:37 riastradh Exp $");
 
 #include <sys/param.h>
 #include <sys/proc.h>
@@ -61,6 +61,8 @@ __KERNEL_RCSID(0, "$NetBSD: db_memrw.c,v
 
 #include <machine/db_machdep.h>
 
+#include <x86/bootspace.h>
+
 #include <ddb/db_access.h>
 #include <ddb/db_output.h>
 

Index: src/sys/arch/x86/x86/patch.c
diff -u src/sys/arch/x86/x86/patch.c:1.51 src/sys/arch/x86/x86/patch.c:1.52
--- src/sys/arch/x86/x86/patch.c:1.51	Sat Jul 30 14:11:00 2022
+++ src/sys/arch/x86/x86/patch.c	Sat Aug 20 23:15:37 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: patch.c,v 1.51 2022/07/30 14:11:00 riastradh Exp $	*/
+/*	$NetBSD: patch.c,v 1.52 2022/08/20 23:15:37 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: patch.c,v 1.51 2022/07/30 14:11:00 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: patch.c,v 1.52 2022/08/20 23:15:37 riastradh Exp $");
 
 #include "opt_lockdebug.h"
 #ifdef i386
@@ -52,6 +52,7 @@ __KERNEL_RCSID(0, "$NetBSD: patch.c,v 1.
 #include <uvm/uvm.h>
 #include <machine/pmap.h>
 
+#include <x86/bootspace.h>
 #include <x86/cpuvar.h>
 #include <x86/cputypes.h>
 

Index: src/sys/arch/x86/x86/pmap.c
diff -u src/sys/arch/x86/x86/pmap.c:1.416 src/sys/arch/x86/x86/pmap.c:1.417
--- src/sys/arch/x86/x86/pmap.c:1.416	Sat Aug 20 23:13:51 2022
+++ src/sys/arch/x86/x86/pmap.c	Sat Aug 20 23:15:37 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.416 2022/08/20 23:13:51 riastradh Exp $	*/
+/*	$NetBSD: pmap.c,v 1.417 2022/08/20 23:15:37 riastradh Exp $	*/
 
 /*
  * Copyright (c) 2008, 2010, 2016, 2017, 2019, 2020 The NetBSD Foundation, Inc.
@@ -130,7 +130,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.416 2022/08/20 23:13:51 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.417 2022/08/20 23:15:37 riastradh Exp $");
 
 #include "opt_user_ldt.h"
 #include "opt_lockdebug.h"
@@ -167,6 +167,7 @@ __KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.4
 #include <machine/cpuvar.h>
 #include <machine/cputypes.h>
 
+#include <x86/bootspace.h>
 #include <x86/pat.h>
 #include <x86/pmap_pv.h>
 

Index: src/sys/arch/x86/x86/x86_machdep.c
diff -u src/sys/arch/x86/x86/x86_machdep.c:1.150 src/sys/arch/x86/x86/x86_machdep.c:1.151
--- src/sys/arch/x86/x86/x86_machdep.c:1.150	Thu Oct 28 10:45:49 2021
+++ src/sys/arch/x86/x86/x86_machdep.c	Sat Aug 20 23:15:37 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: x86_machdep.c,v 1.150 2021/10/28 10:45:49 riastradh Exp $	*/
+/*	$NetBSD: x86_machdep.c,v 1.151 2022/08/20 23:15:37 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2002, 2006, 2007 YAMAMOTO Takashi,
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: x86_machdep.c,v 1.150 2021/10/28 10:45:49 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: x86_machdep.c,v 1.151 2022/08/20 23:15:37 riastradh Exp $");
 
 #include "opt_modular.h"
 #include "opt_physmem.h"
@@ -55,6 +55,7 @@ __KERNEL_RCSID(0, "$NetBSD: x86_machdep.
 #include <sys/extent.h>
 #include <sys/rnd.h>
 
+#include <x86/bootspace.h>
 #include <x86/cpuvar.h>
 #include <x86/cputypes.h>
 #include <x86/efi.h>

Added files:

Index: src/sys/arch/x86/include/bootspace.h
diff -u /dev/null src/sys/arch/x86/include/bootspace.h:1.1
--- /dev/null	Sat Aug 20 23:15:37 2022
+++ src/sys/arch/x86/include/bootspace.h	Sat Aug 20 23:15:37 2022
@@ -0,0 +1,111 @@
+/*	$NetBSD: bootspace.h,v 1.1 2022/08/20 23:15:37 riastradh Exp $	*/
+
+/*
+ * Copyright (c) 1997 Charles D. Cranor and Washington University.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * Copyright (c) 2001 Wasabi Systems, Inc.
+ * All rights reserved.
+ *
+ * Written by Frank van der Linden for Wasabi Systems, Inc.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 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 for the NetBSD Project by
+ *      Wasabi Systems, Inc.
+ * 4. The name of Wasabi Systems, Inc. may not be used to endorse
+ *    or promote products derived from this software without specific prior
+ *    written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL WASABI SYSTEMS, INC
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef	_X86_BOOTSPACE_H_
+#define	_X86_BOOTSPACE_H_
+
+#include <sys/types.h>
+
+#define BTSEG_NONE	0
+#define BTSEG_TEXT	1
+#define BTSEG_RODATA	2
+#define BTSEG_DATA	3
+#define BTSPACE_NSEGS	64
+
+struct bootspace {
+	struct {
+		vaddr_t va;
+		paddr_t pa;
+		size_t sz;
+	} head;
+
+	/* Kernel segments. */
+	struct {
+		int type;
+		vaddr_t va;
+		paddr_t pa;
+		size_t sz;
+	} segs[BTSPACE_NSEGS];
+
+	/*
+	 * The area used by the early kernel bootstrap. It contains the kernel
+	 * symbols, the preloaded modules, the bootstrap tables, and the ISA I/O
+	 * mem.
+	 */
+	struct {
+		vaddr_t va;
+		paddr_t pa;
+		size_t sz;
+	} boot;
+
+	/* A magic VA usable by the bootstrap code. */
+	vaddr_t spareva;
+
+	/* Virtual address of the page directory. */
+	vaddr_t pdir;
+
+	/* Area dedicated to kernel modules (amd64 only). */
+	vaddr_t smodule;
+	vaddr_t emodule;
+};
+
+#endif	/* _X86_BOOTSPACE_H_ */

Reply via email to