CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: thorpej Date: Thu Jan 18 05:13:48 UTC 2024 Modified Files: src/sys/arch/sun2/conf: std.sun2 Log Message: Add "options M68010" for completeness. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/sys/arch/sun2/conf/std.sun2 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/sun2/conf/std.sun2 diff -u src/sys/arch/sun2/conf/std.sun2:1.7 src/sys/arch/sun2/conf/std.sun2:1.8 --- src/sys/arch/sun2/conf/std.sun2:1.7 Sun Sep 19 02:09:29 2010 +++ src/sys/arch/sun2/conf/std.sun2 Thu Jan 18 05:13:48 2024 @@ -1,9 +1,12 @@ -# $NetBSD: std.sun2,v 1.7 2010/09/19 02:09:29 tsutsui Exp $ +# $NetBSD: std.sun2,v 1.8 2024/01/18 05:13:48 thorpej Exp $ # Standard information for Sun2 machines. machine sun2 m68k sun68k include "conf/std" # MI standard options include "arch/m68k/conf/std.m68k" # m68k standard options +# All sun2 systems have a 68010. +options M68010 + # XXX temporary option until sun3 port migrates to all sun68k stuff options _SUN2_
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: thorpej Date: Thu Jan 18 05:13:48 UTC 2024 Modified Files: src/sys/arch/sun2/conf: std.sun2 Log Message: Add "options M68010" for completeness. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/sys/arch/sun2/conf/std.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 20:22:52 UTC 2021 Modified Files: src/sys/arch/sun2/conf: INSTALL Log Message: The INSTALL kernel needs to be small too To generate a diff of this commit: cvs rdiff -u -r1.53 -r1.54 src/sys/arch/sun2/conf/INSTALL 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/sun2/conf/INSTALL diff -u src/sys/arch/sun2/conf/INSTALL:1.53 src/sys/arch/sun2/conf/INSTALL:1.54 --- src/sys/arch/sun2/conf/INSTALL:1.53 Wed Aug 1 16:04:14 2018 +++ src/sys/arch/sun2/conf/INSTALL Mon Aug 30 16:22:52 2021 @@ -1,4 +1,4 @@ -# $NetBSD: INSTALL,v 1.53 2018/08/01 20:04:14 maxv Exp $ +# $NetBSD: INSTALL,v 1.54 2021/08/30 20:22:52 christos Exp $ # INSTALL Sun2 (2/120, 2/170, 2/50, ...) @@ -6,9 +6,11 @@ include "arch/sun2/conf/std.sun2" #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "INSTALL-$Revision: 1.53 $" +#ident "INSTALL-$Revision: 1.54 $" -makeoptions COPTS="-Os" # optimize for size +makeoptions COPTS="-Os -ffunction-sections -fdata-sections" # optimize for size +makeoptions EXTRA_LINKFLAGS="--gc-sections" +makeoptions KERNLDSCRIPT="${SUN2}/conf/kern.ldscript" # Machines to be supported by this kernel #options FPU_EMULATE
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 20:22:52 UTC 2021 Modified Files: src/sys/arch/sun2/conf: INSTALL Log Message: The INSTALL kernel needs to be small too To generate a diff of this commit: cvs rdiff -u -r1.53 -r1.54 src/sys/arch/sun2/conf/INSTALL Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 19:01:06 UTC 2021 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Only use the ldscript for the RAMDISK kernel for now. To generate a diff of this commit: cvs rdiff -u -r1.28 -r1.29 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.28 src/sys/arch/sun2/conf/Makefile.sun2:1.29 --- src/sys/arch/sun2/conf/Makefile.sun2:1.28 Mon Aug 30 14:59:57 2021 +++ src/sys/arch/sun2/conf/Makefile.sun2 Mon Aug 30 15:01:05 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.28 2021/08/30 18:59:57 christos Exp $ +# $NetBSD: Makefile.sun2,v 1.29 2021/08/30 19:01:05 christos Exp $ # Makefile for NetBSD # @@ -34,8 +34,6 @@ GENASSYM_CONF= ${SUN2}/sun2/genassym.cf CPPFLAGS+= -Dsun2 CFLAGS+= -msoft-float -fno-defer-pop AFLAGS+= -x assembler-with-cpp -KERNLDSCRIPT?= ${SUN2}/conf/kern.ldscript - # XXX COPTS.promlib.c+=${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :}
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 19:01:06 UTC 2021 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Only use the ldscript for the RAMDISK kernel for now. To generate a diff of this commit: cvs rdiff -u -r1.28 -r1.29 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 18:59:57 UTC 2021 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 RAMDISK Added Files: src/sys/arch/sun2/conf: kern.ldscript Log Message: use -ffunction-sections -fdata-sections --gc-sections with an ldscript that keeps _start. This deletes all unused code and shrinks the RAMDISK kernel enough to be able to boot again: -rwxr-xr-x 1 root src 2519436 Aug 30 06:38 RAMDISK.1/netbsd* -rwxr-xr-x 1 root src 2104440 Aug 30 07:41 RAMDISK/netbsd* textdata bss dec hex filename 1525412 686252 63552 2275216 22b790 RAMDISK.1/netbsd 1098524 686400 67008 1851932 1c421c RAMDISK/netbsd To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/sys/arch/sun2/conf/Makefile.sun2 cvs rdiff -u -r1.60 -r1.61 src/sys/arch/sun2/conf/RAMDISK cvs rdiff -u -r0 -r1.1 src/sys/arch/sun2/conf/kern.ldscript 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.27 src/sys/arch/sun2/conf/Makefile.sun2:1.28 --- src/sys/arch/sun2/conf/Makefile.sun2:1.27 Mon Oct 5 06:42:53 2020 +++ src/sys/arch/sun2/conf/Makefile.sun2 Mon Aug 30 14:59:57 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.27 2020/10/05 10:42:53 rin Exp $ +# $NetBSD: Makefile.sun2,v 1.28 2021/08/30 18:59:57 christos Exp $ # Makefile for NetBSD # @@ -34,6 +34,8 @@ GENASSYM_CONF= ${SUN2}/sun2/genassym.cf CPPFLAGS+= -Dsun2 CFLAGS+= -msoft-float -fno-defer-pop AFLAGS+= -x assembler-with-cpp +KERNLDSCRIPT?= ${SUN2}/conf/kern.ldscript + # XXX COPTS.promlib.c+=${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :} Index: src/sys/arch/sun2/conf/RAMDISK diff -u src/sys/arch/sun2/conf/RAMDISK:1.60 src/sys/arch/sun2/conf/RAMDISK:1.61 --- src/sys/arch/sun2/conf/RAMDISK:1.60 Wed Apr 3 12:30:28 2019 +++ src/sys/arch/sun2/conf/RAMDISK Mon Aug 30 14:59:57 2021 @@ -1,4 +1,4 @@ -# $NetBSD: RAMDISK,v 1.60 2019/04/03 16:30:28 christos Exp $ +# $NetBSD: RAMDISK,v 1.61 2021/08/30 18:59:57 christos Exp $ # RAMDISK: Root/swap on ramdisk # This kernel is used to: @@ -13,7 +13,9 @@ include "arch/sun2/conf/std.sun2" #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -makeoptions COPTS="-Os" # optimize for size +makeoptions COPTS="-Os -ffunction-sections -fdata-sections" # optimize for size +makeoptions EXTRA_LINKFLAGS="--gc-sections" +makeoptions KERNLDSCRIPT="${SUN2}/conf/kern.ldscript" # Machines to be supported by this kernel #options FPU_EMULATE Added files: Index: src/sys/arch/sun2/conf/kern.ldscript diff -u /dev/null src/sys/arch/sun2/conf/kern.ldscript:1.1 --- /dev/null Mon Aug 30 14:59:58 2021 +++ src/sys/arch/sun2/conf/kern.ldscript Mon Aug 30 14:59:57 2021 @@ -0,0 +1,88 @@ +/* $NetBSD: kern.ldscript,v 1.1 2021/08/30 18:59:57 christos Exp $ */ + +#include "assym.h" + +__PAGE_SIZE = 0x1000 ; + +ENTRY(_start) +SECTIONS +{ + .text : AT (ADDR(.text) & 0x0fff) + { + KEEP(*(.text._start)); + . = ALIGN(__PAGE_SIZE); + __text_user_start = . ; + *(.text.user) + . = ALIGN(__PAGE_SIZE); + __text_user_end = . ; + + *(.text) + *(.text.*) + *(.stub) + . = ALIGN(__PAGE_SIZE); + } =0xCC + _etext = . ; + PROVIDE (etext = .) ; + + /* + * Push the rodata segment up to the next large page boundary so that we + * can map the text segment with large pages. + */ + . = ALIGN(__PAGE_SIZE); + + __rodata_start = . ; + + .rodata : + { + *(.rodata) + *(.rodata.*) + . = ALIGN(COHERENCY_UNIT); + __CTOR_LIST__ = .; + *(.ctors) + __CTOR_END__ = .; + } + + . = ALIGN(__PAGE_SIZE); + + __data_start = . ; + .data : + { + *(.data) + } + + . = ALIGN(COHERENCY_UNIT); + .data.cacheline_aligned : + { + *(.data.cacheline_aligned) + } + . = ALIGN(COHERENCY_UNIT); + .data.read_mostly : + { + *(.data.read_mostly) + } + . = ALIGN(COHERENCY_UNIT); + + _edata = . ; + PROVIDE (edata = .) ; + __bss_start = . ; + .bss : + { + *(.bss) + *(.bss.*) + *(COMMON) + . = ALIGN(__PAGE_SIZE); + } + + . = ALIGN(__PAGE_SIZE); + + /* End of the kernel image */ + __kernel_end = . ; + + _end = . ; + PROVIDE (end = .) ; + .note.netbsd.ident : + { + KEEP(*(.note.netbsd.ident)); + } +} +
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Mon Aug 30 18:59:57 UTC 2021 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 RAMDISK Added Files: src/sys/arch/sun2/conf: kern.ldscript Log Message: use -ffunction-sections -fdata-sections --gc-sections with an ldscript that keeps _start. This deletes all unused code and shrinks the RAMDISK kernel enough to be able to boot again: -rwxr-xr-x 1 root src 2519436 Aug 30 06:38 RAMDISK.1/netbsd* -rwxr-xr-x 1 root src 2104440 Aug 30 07:41 RAMDISK/netbsd* textdata bss dec hex filename 1525412 686252 63552 2275216 22b790 RAMDISK.1/netbsd 1098524 686400 67008 1851932 1c421c RAMDISK/netbsd To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/sys/arch/sun2/conf/Makefile.sun2 cvs rdiff -u -r1.60 -r1.61 src/sys/arch/sun2/conf/RAMDISK cvs rdiff -u -r0 -r1.1 src/sys/arch/sun2/conf/kern.ldscript Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Oct 5 10:42:53 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Kernel without -fno-omit-frame-pointer works fine now, both for GCC8 and 9. Not sure which commit ``fixed'' the problem although... To generate a diff of this commit: cvs rdiff -u -r1.26 -r1.27 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.26 src/sys/arch/sun2/conf/Makefile.sun2:1.27 --- src/sys/arch/sun2/conf/Makefile.sun2:1.26 Tue Sep 8 00:51:29 2020 +++ src/sys/arch/sun2/conf/Makefile.sun2 Mon Oct 5 10:42:53 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.26 2020/09/08 00:51:29 mrg Exp $ +# $NetBSD: Makefile.sun2,v 1.27 2020/10/05 10:42:53 rin Exp $ # Makefile for NetBSD # @@ -36,7 +36,6 @@ CFLAGS+= -msoft-float -fno-defer-pop AFLAGS+= -x assembler-with-cpp # XXX -COPTS+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 8:? -fno-omit-frame-pointer :} COPTS.promlib.c+=${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :} ##
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Oct 5 10:42:53 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Kernel without -fno-omit-frame-pointer works fine now, both for GCC8 and 9. Not sure which commit ``fixed'' the problem although... To generate a diff of this commit: cvs rdiff -u -r1.26 -r1.27 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Tue Sep 8 00:51:29 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: don't warn about array bounds for dodgy diagnostic code. fixes gcc9 builds. To generate a diff of this commit: cvs rdiff -u -r1.25 -r1.26 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Tue Sep 8 00:51:29 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: don't warn about array bounds for dodgy diagnostic code. fixes gcc9 builds. To generate a diff of this commit: cvs rdiff -u -r1.25 -r1.26 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.25 src/sys/arch/sun2/conf/Makefile.sun2:1.26 --- src/sys/arch/sun2/conf/Makefile.sun2:1.25 Mon Aug 10 06:28:42 2020 +++ src/sys/arch/sun2/conf/Makefile.sun2 Tue Sep 8 00:51:29 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.25 2020/08/10 06:28:42 rin Exp $ +# $NetBSD: Makefile.sun2,v 1.26 2020/09/08 00:51:29 mrg Exp $ # Makefile for NetBSD # @@ -36,9 +36,8 @@ CFLAGS+= -msoft-float -fno-defer-pop AFLAGS+= -x assembler-with-cpp # XXX -.if ${HAVE_GCC:U0} >= 8 -COPTS+= -fno-omit-frame-pointer -.endif +COPTS+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 8:? -fno-omit-frame-pointer :} +COPTS.promlib.c+=${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :} ## ## (3) libkern and compat
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Aug 10 06:29:49 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Reduce kernel size by - Adding -fno-asynchronous-unwind-tables and -fno-unwind-tables to COPTS - Specify NO_KERNEL_RCSIDS to strip RCSIDS Also adding -fno-omit-frame-pointer to COPTS for backtrace in DDB. To generate a diff of this commit: cvs rdiff -u -r1.106 -r1.107 src/sys/arch/sun2/conf/GENERIC 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.106 src/sys/arch/sun2/conf/GENERIC:1.107 --- src/sys/arch/sun2/conf/GENERIC:1.106 Sat Aug 1 08:20:52 2020 +++ src/sys/arch/sun2/conf/GENERIC Mon Aug 10 06:29:49 2020 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.106 2020/08/01 08:20:52 maxv Exp $ +# $NetBSD: GENERIC,v 1.107 2020/08/10 06:29:49 rin Exp $ # # GENERIC machine description file # @@ -29,10 +29,13 @@ options INSECURE # allow modload(8) in #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.106 $" +#ident "GENERIC-$Revision: 1.107 $" -makeoptions COPTS="-Os -fno-inline-small-functions" - # bootloader has size limit (~2MB) +# Bootloader has size limit (~2MB). Kernel should be smaller than this +# hard limit. Otherwise, it freezes before adding swap even with 7MB +# memory. -fno-omit-frame-pointer is necessary for backtraces in DDB. +options NO_KERNEL_RCSIDS +makeoptions COPTS="-Os -fno-inline-small-functions -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-omit-frame-pointer" # Machines to be supported by this kernel #options FPU_EMULATE
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Aug 10 06:29:49 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Reduce kernel size by - Adding -fno-asynchronous-unwind-tables and -fno-unwind-tables to COPTS - Specify NO_KERNEL_RCSIDS to strip RCSIDS Also adding -fno-omit-frame-pointer to COPTS for backtrace in DDB. To generate a diff of this commit: cvs rdiff -u -r1.106 -r1.107 src/sys/arch/sun2/conf/GENERIC Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Aug 10 06:28:42 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Compile sun2 kernel with -fno-omit-frame-pointer for GCC8 as a work around for reproducible kernel freezes just after ``Starting postfix.'', where I cannot even enter DDB nor obtain crash dump. I still haven't figured out why. Possibly something wrong with -Os optimization level for GCC/m68k, cf., http://mail-index.netbsd.org/port-sun3/2020/07/19/msg000166.html To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.24 src/sys/arch/sun2/conf/Makefile.sun2:1.25 --- src/sys/arch/sun2/conf/Makefile.sun2:1.24 Sat Sep 22 12:24:03 2018 +++ src/sys/arch/sun2/conf/Makefile.sun2 Mon Aug 10 06:28:42 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.24 2018/09/22 12:24:03 rin Exp $ +# $NetBSD: Makefile.sun2,v 1.25 2020/08/10 06:28:42 rin Exp $ # Makefile for NetBSD # @@ -35,6 +35,11 @@ CPPFLAGS+= -Dsun2 CFLAGS+= -msoft-float -fno-defer-pop AFLAGS+= -x assembler-with-cpp +# XXX +.if ${HAVE_GCC:U0} >= 8 +COPTS+= -fno-omit-frame-pointer +.endif + ## ## (3) libkern and compat ##
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Mon Aug 10 06:28:42 UTC 2020 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Compile sun2 kernel with -fno-omit-frame-pointer for GCC8 as a work around for reproducible kernel freezes just after ``Starting postfix.'', where I cannot even enter DDB nor obtain crash dump. I still haven't figured out why. Possibly something wrong with -Os optimization level for GCC/m68k, cf., http://mail-index.netbsd.org/port-sun3/2020/07/19/msg000166.html To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Re: Modularize sun2 kernel (Re: CVS commit: src/sys/arch/sun2/conf)
> On Mar 14, 2020, at 8:10 PM, Jason Thorpe wrote: > > redundant things (e.g. extent vs vmem) In case this wasn't obvious, I favor ejecting extent in favor of vmem. -- thorpej
Re: Modularize sun2 kernel (Re: CVS commit: src/sys/arch/sun2/conf)
> On Mar 14, 2020, at 7:57 PM, Rin Okuyama wrote: > > I think that we can no longer support 4MB system because of (2); hangs > due to (2) are much more serious for 4MB system than it is in 7MB system. > Modern kernel allocates too much things on demand rather than statically > allocating them in data segment... We should be striving to make that work. There are some redundant things (e.g. extent vs vmem) that we should explore getting rid of... and find ways to trim optionally functionality so we can keep these old systems running. -- thorpej
Modularize sun2 kernel (Re: CVS commit: src/sys/arch/sun2/conf)
(added port-sun2 and thorpej) On 2020/03/08 17:40, matthew green wrote: "Rin Okuyama" writes: Module Name:src Committed By: rin Date: Sun Mar 8 06:25:10 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Retire md(4) in favor of tmpfs provided by module, though both are not useful for 8MB RAM system... ... it's cool you got modules on sun2 working... however, the module version of a thing is going to use more real memory than the built-in version, so i'm not sure where this is going yet... Sorry for the late reply. I was confused by weird kernel behaviors when memory shortage. But, I think that I slowly came to understand that :). Yes, modular kernel requires more memory, mainly because KERN_AS is changed from ``library'' to ``obj'': https://nxr.netbsd.org/xref/src/sys/lib/libkern/Makefile.inc#8 This pulls in all libkern routines to kernel. However, I think that modularization is the only way to prolong sun2 port as far as I can tell. We need to reduce kernel text as much as possible. This is because (1) Our bootloader mapps only 2MB for kernel image. (2) Even though bootloader can load kernel, it hangs here and there, if kernel size is near 2MB. For (1), our GENERIC is very close to this limit, even though almost all additional features are stripped off. I managed to map more 128KB memory, (maybe) not used by firmware, at least on TME: http://www.netbsd.org/~rin/sun2_bootloader_20200315.patch But I don't know whether it works or not on real hardwares. (2) is more serious. When kernel hangs, it is trapped in pagedaemon. I built a kernel with DIAGNOSTIC and LOCKDEBUG, but no failures are detected. Now, I imagine its scenario as follows: Our kernel allocates many memory on demand. Hangs may be the normal operation (not a bug) when memory is allocated with KM_SLEEP or M_WAITOK, but pagedaemon cannot free memory. Swap is not ready in early boot stage, or all memory is wired, or thrashing takes place like ping-pong; suppose two memory segments are required at the same time. pagedaemon swaps out segment 1 to swap in segment 2, and immediately after, it frees segment 2 to pull in segment 1. Then, ``deadlock'' is effectively formed, which is cannot detected by neither DIAGNOSTIC nor LOCKDEBUG. Hangs due to (2) are remarkably mitigated by modularization. More features can be loaded by modload(8), even if kernel stops working when that are statically linked into kernel. This is because kernel text is wired, whereas modules are pageable. 8MB? luxury? :) i've been testing in 4MB tme :) Sorry, s/8MB/7MB/ in the commit log. Framebuffer and etc. reside at PA 0x70 and above. I think that we can no longer support 4MB system because of (2); hangs due to (2) are much more serious for 4MB system than it is in 7MB system. Modern kernel allocates too much things on demand rather than statically allocating them in data segment... GENERIC became not working again due to (2) (even for 7MB). Can I go further, i.e., strip more features that can be provided by modules, or do you have any other ideas? P.S. In many cases of hangs due to (2), I can break into DDB from console. However, in some cases, especially due to "ifconfig lo0 127.0.0.1" in /etc/rc, it does not even accept input from console. I suspect that someone in our network code allocates memory with KM_SLEEP or M_WAITOK in the interrupt context, or with spl raised... Thanks, rin
re: CVS commit: src/sys/arch/sun2/conf
"Rin Okuyama" writes: > Module Name: src > Committed By: rin > Date: Sun Mar 8 06:25:10 UTC 2020 > > Modified Files: > src/sys/arch/sun2/conf: GENERIC > > Log Message: > Retire md(4) in favor of tmpfs provided by module, > though both are not useful for 8MB RAM system... hi Rin. it's cool you got modules on sun2 working... however, the module version of a thing is going to use more real memory than the built-in version, so i'm not sure where this is going yet... 8MB? luxury? :) i've been testing in 4MB tme :) .mrg.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Sun Mar 8 06:32:41 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC NFS Log Message: Fix comments on root devices. To generate a diff of this commit: cvs rdiff -u -r1.104 -r1.105 src/sys/arch/sun2/conf/GENERIC cvs rdiff -u -r1.1 -r1.2 src/sys/arch/sun2/conf/NFS 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.104 src/sys/arch/sun2/conf/GENERIC:1.105 --- src/sys/arch/sun2/conf/GENERIC:1.104 Sun Mar 8 06:25:10 2020 +++ src/sys/arch/sun2/conf/GENERIC Sun Mar 8 06:32:41 2020 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.104 2020/03/08 06:25:10 rin Exp $ +# $NetBSD: GENERIC,v 1.105 2020/03/08 06:32:41 rin Exp $ # # GENERIC machine description file # @@ -19,7 +19,7 @@ # device. # Supports Sun2 (2/120, 2/170, 2/50, ...) -# Supports root on: ie0, sd*, ... +# Supports root on: sd*, ... (FFS) include "arch/sun2/conf/std.sun2" @@ -29,7 +29,7 @@ options INSECURE # allow modload(8) in #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.104 $" +#ident "GENERIC-$Revision: 1.105 $" makeoptions COPTS="-Os -fno-inline-small-functions" # bootloader has size limit (~2MB) Index: src/sys/arch/sun2/conf/NFS diff -u src/sys/arch/sun2/conf/NFS:1.1 src/sys/arch/sun2/conf/NFS:1.2 --- src/sys/arch/sun2/conf/NFS:1.1 Sun Mar 8 06:23:18 2020 +++ src/sys/arch/sun2/conf/NFS Sun Mar 8 06:32:41 2020 @@ -1,9 +1,9 @@ -# $NetBSD: NFS,v 1.1 2020/03/08 06:23:18 rin Exp $ +# $NetBSD: NFS,v 1.2 2020/03/08 06:32:41 rin Exp $ # # GENERIC machine description file for NFS root instead of FFS # Supports Sun2 (2/120, 2/170, 2/50, ...) -# Supports root on: ie0, sd*, ... +# Supports root on: ie0, ... (NFS) include "arch/sun2/conf/GENERIC" no file-system FFS
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Sun Mar 8 06:32:41 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC NFS Log Message: Fix comments on root devices. To generate a diff of this commit: cvs rdiff -u -r1.104 -r1.105 src/sys/arch/sun2/conf/GENERIC cvs rdiff -u -r1.1 -r1.2 src/sys/arch/sun2/conf/NFS Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Sun Mar 8 06:25:10 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Retire md(4) in favor of tmpfs provided by module, though both are not useful for 8MB RAM system... To generate a diff of this commit: cvs rdiff -u -r1.103 -r1.104 src/sys/arch/sun2/conf/GENERIC 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.103 src/sys/arch/sun2/conf/GENERIC:1.104 --- src/sys/arch/sun2/conf/GENERIC:1.103 Sun Mar 8 06:23:18 2020 +++ src/sys/arch/sun2/conf/GENERIC Sun Mar 8 06:25:10 2020 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.103 2020/03/08 06:23:18 rin Exp $ +# $NetBSD: GENERIC,v 1.104 2020/03/08 06:25:10 rin Exp $ # # GENERIC machine description file # @@ -29,7 +29,7 @@ options INSECURE # allow modload(8) in #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.103 $" +#ident "GENERIC-$Revision: 1.104 $" makeoptions COPTS="-Os -fno-inline-small-functions" # bootloader has size limit (~2MB) @@ -228,7 +228,7 @@ options SCSI_OLD_NOINQUIRY #pseudo-device accf_http # "httpready" accept filter ## Memory-disk device. -pseudo-device md +#pseudo-device md Network interfaces.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: rin Date: Sun Mar 8 06:25:10 UTC 2020 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Retire md(4) in favor of tmpfs provided by module, though both are not useful for 8MB RAM system... To generate a diff of this commit: cvs rdiff -u -r1.103 -r1.104 src/sys/arch/sun2/conf/GENERIC Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Wed Apr 3 16:30:29 UTC 2019 Modified Files: src/sys/arch/sun2/conf: RAMDISK Log Message: Gut more stuff so we fit. Last working RAMDISK kernel was 6.1.5. Nobody runs this stuff anymore, so consider that netbsd 9 might be the last sun2 release. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/sys/arch/sun2/conf/RAMDISK 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/sun2/conf/RAMDISK diff -u src/sys/arch/sun2/conf/RAMDISK:1.59 src/sys/arch/sun2/conf/RAMDISK:1.60 --- src/sys/arch/sun2/conf/RAMDISK:1.59 Wed Aug 1 16:04:14 2018 +++ src/sys/arch/sun2/conf/RAMDISK Wed Apr 3 12:30:28 2019 @@ -1,4 +1,4 @@ -# $NetBSD: RAMDISK,v 1.59 2018/08/01 20:04:14 maxv Exp $ +# $NetBSD: RAMDISK,v 1.60 2019/04/03 16:30:28 christos Exp $ # RAMDISK: Root/swap on ramdisk # This kernel is used to: @@ -27,7 +27,7 @@ maxusers 2 #options SYSVSEM # System V semaphores #options SYSVSHM # System V shared memory #options INSECURE # disable kernel security level -options USERCONF # userconf(4) support +#options USERCONF # userconf(4) support options PIPE_SOCKETPAIR # smaller, but slower pipe(2) #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel @@ -51,12 +51,12 @@ options PIPE_SOCKETPAIR # smaller, but #options COMPAT_SUNOS # can run SunOS 4.1.1 executables #options COMPAT_AOUT_M68K # support for NetBSD a.out executables #options EXEC_AOUT # support for a.out executables -options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. +#options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # Filesystem options file-system FFS # Berkeley Fast Filesystem -file-system NFS # Sun NFS client support -file-system CD9660 # ISO 9660 + Rock Ridge file system +#file-system NFS # Sun NFS client support +#file-system CD9660 # ISO 9660 + Rock Ridge file system #file-system FDESC # /dev/fd/* #file-system KERNFS # /kern #file-system NULLFS # loopback file system @@ -70,7 +70,7 @@ file-system CD9660 # ISO 9660 + Rock Ri #options QUOTA # legacy UFS quotas #options QUOTA2 # new, in-filesystem UFS quotas #options FFS_EI # FFS Endian Independent support -options NFS_V2_ONLY # Exclude NFS3 code to save space +#options NFS_V2_ONLY # Exclude NFS3 code to save space options FFS_NO_SNAPSHOT # No FFS snapshot support # Networking options @@ -172,7 +172,7 @@ scsibus* at sc? scsibus* at si? sd* at scsibus? target ? lun ? # SCSI disks st* at scsibus? target ? lun ? # SCSI tapes -cd* at scsibus? target ? lun ? # SCSI CD-ROMs +#cd* at scsibus? target ? lun ? # SCSI CD-ROMs #ch* at scsibus? target ? lun ? # SCSI changer devices #ss* at scsibus? target ? lun ? # SCSI scanners #ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE @@ -219,7 +219,7 @@ pcons0 at mainbus0 # PROM console Miscellaneous. pseudo-device loop # network loopback #pseudo-device bpfilter # packet filter -pseudo-device sl # CSLIP +#pseudo-device sl # CSLIP #pseudo-device ppp # PPP #pseudo-device tun # network tunneling over tty #pseudo-device gre # generic L3 over IP tunnel
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: christos Date: Wed Apr 3 16:30:29 UTC 2019 Modified Files: src/sys/arch/sun2/conf: RAMDISK Log Message: Gut more stuff so we fit. Last working RAMDISK kernel was 6.1.5. Nobody runs this stuff anymore, so consider that netbsd 9 might be the last sun2 release. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/sys/arch/sun2/conf/RAMDISK Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Fri Jun 1 01:19:06 UTC 2018 Modified Files: src/sys/arch/sun2/conf: FOURMEG Log Message: disable a few more things and return another 1% of memory. To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.62 src/sys/arch/sun2/conf/FOURMEG Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Fri Jun 1 01:19:06 UTC 2018 Modified Files: src/sys/arch/sun2/conf: FOURMEG Log Message: disable a few more things and return another 1% of memory. To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.62 src/sys/arch/sun2/conf/FOURMEG 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/sun2/conf/FOURMEG diff -u src/sys/arch/sun2/conf/FOURMEG:1.61 src/sys/arch/sun2/conf/FOURMEG:1.62 --- src/sys/arch/sun2/conf/FOURMEG:1.61 Thu Sep 14 07:58:43 2017 +++ src/sys/arch/sun2/conf/FOURMEG Fri Jun 1 01:19:06 2018 @@ -1,4 +1,4 @@ -# $NetBSD: FOURMEG,v 1.61 2017/09/14 07:58:43 mrg Exp $ +# $NetBSD: FOURMEG,v 1.62 2018/06/01 01:19:06 mrg Exp $ # FOURMEG Sun2 (2/120, 2/170, 2/50, ...) # Supports root on: ie0, sd*, ... @@ -7,9 +7,9 @@ include "arch/sun2/conf/std.sun2" #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "FOURMEG-$Revision: 1.61 $" +#ident "FOURMEG-$Revision: 1.62 $" -makeoptions COPTS="-Os" # optimize for size +makeoptions COPTS="-Os -fno-inline-small-functions" # optimize for size # Machines to be supported by this kernel #options FPU_EMULATE @@ -18,12 +18,12 @@ makeoptions COPTS="-Os" # optimize for s maxusers 4 # Standard system options -options KTRACE # system call tracing +#options KTRACE # system call tracing #options SYSVMSG # System V message queues #options SYSVSEM # System V semaphores #options SYSVSHM # System V shared memory #options INSECURE # disable kernel security level -options USERCONF # userconf(4) support +#options USERCONF # userconf(4) support options PIPE_SOCKETPAIR # smaller, but slower pipe(2) #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel @@ -43,7 +43,7 @@ options PIPE_SOCKETPAIR # smaller, but #options SCSIVERBOSE # Verbose SCSI errors # Compatibility options -include "conf/compat_netbsd70.config" +#include "conf/compat_netbsd16.config" #options COMPAT_SUNOS # can run SunOS 4.1.1 executables #options COMPAT_AOUT_M68K # support for NetBSD a.out executables #options EXEC_AOUT # support for a.out executables @@ -223,3 +223,8 @@ pseudo-device pty # pseudo-terminals #options RAID_AUTOCONFIG # auto-configuration of RAID components #pseudo-device fss # file system snapshot device pseudo-device clockctl # user control of clock subsystem + +no options AIO +no options BUFQ_FCFS +no options RFC2292 +no options MQUEUE
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: maya Date: Wed Mar 7 15:20:50 UTC 2018 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Remove more unused functions with COMPAT_AS=library To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.21 src/sys/arch/sun2/conf/Makefile.sun2:1.22 --- src/sys/arch/sun2/conf/Makefile.sun2:1.21 Sat Mar 3 03:19:18 2018 +++ src/sys/arch/sun2/conf/Makefile.sun2 Wed Mar 7 15:20:50 2018 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.21 2018/03/03 03:19:18 mrg Exp $ +# $NetBSD: Makefile.sun2,v 1.22 2018/03/07 15:20:50 maya Exp $ # Makefile for NetBSD # @@ -38,11 +38,13 @@ AFLAGS+= -x assembler-with-cpp ## ## (3) libkern and compat ## -OPT_MODULAR= %MODULAR% +OPT_MODULAR= %MODULAR% .if !empty(OPT_MODULAR) -KERN_AS= obj +KERN_AS= obj +COMPAT_AS= obj .else -KERN_AS= library +KERN_AS= library +COMPAT_AS= library .endif # XXX lib/libkern/arch/m68k/Makefile.inc needs to know that # XXX our MACHINE_ARCH is m68000, and not m68k. --fredette
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: maya Date: Wed Mar 7 15:20:50 UTC 2018 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: Remove more unused functions with COMPAT_AS=library To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Sat Mar 3 03:19:19 UTC 2018 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: sun2/sun3: - build libkern as an archive for non modular builds. from maya@ sun3: - cut down GENERIC a bunch to bring below 2MB. - reduce UBC_NWINS, MAXEXEC, and PAGER_MAP_DEFAULT_SIZE to recover enough lost VA to actually run basic tests. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/sys/arch/sun2/conf/Makefile.sun2 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/sun2/conf/Makefile.sun2 diff -u src/sys/arch/sun2/conf/Makefile.sun2:1.20 src/sys/arch/sun2/conf/Makefile.sun2:1.21 --- src/sys/arch/sun2/conf/Makefile.sun2:1.20 Fri Jan 21 15:59:09 2011 +++ src/sys/arch/sun2/conf/Makefile.sun2 Sat Mar 3 03:19:18 2018 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.sun2,v 1.20 2011/01/21 15:59:09 joerg Exp $ +# $NetBSD: Makefile.sun2,v 1.21 2018/03/03 03:19:18 mrg Exp $ # Makefile for NetBSD # @@ -38,7 +38,12 @@ AFLAGS+= -x assembler-with-cpp ## ## (3) libkern and compat ## -KERN_AS= obj +OPT_MODULAR= %MODULAR% +.if !empty(OPT_MODULAR) +KERN_AS= obj +.else +KERN_AS= library +.endif # XXX lib/libkern/arch/m68k/Makefile.inc needs to know that # XXX our MACHINE_ARCH is m68000, and not m68k. --fredette KERNMISCMAKEFLAGS= MACHINE_ARCH=${MACHINE_ARCH}
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Sat Mar 3 03:19:19 UTC 2018 Modified Files: src/sys/arch/sun2/conf: Makefile.sun2 Log Message: sun2/sun3: - build libkern as an archive for non modular builds. from maya@ sun3: - cut down GENERIC a bunch to bring below 2MB. - reduce UBC_NWINS, MAXEXEC, and PAGER_MAP_DEFAULT_SIZE to recover enough lost VA to actually run basic tests. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/sys/arch/sun2/conf/Makefile.sun2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: maxv Date: Sat Feb 10 07:59:54 UTC 2018 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Remove the last reference to IPSEC_ESP. This option was deleted in 2013. To generate a diff of this commit: cvs rdiff -u -r1.99 -r1.100 src/sys/arch/sun2/conf/GENERIC 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.99 src/sys/arch/sun2/conf/GENERIC:1.100 --- src/sys/arch/sun2/conf/GENERIC:1.99 Tue Jan 23 14:47:56 2018 +++ src/sys/arch/sun2/conf/GENERIC Sat Feb 10 07:59:54 2018 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.99 2018/01/23 14:47:56 sevan Exp $ +# $NetBSD: GENERIC,v 1.100 2018/02/10 07:59:54 maxv Exp $ # # GENERIC machine description file # @@ -25,7 +25,7 @@ include "arch/sun2/conf/std.sun2" #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.99 $" +#ident "GENERIC-$Revision: 1.100 $" makeoptions COPTS="-Os" # optimize for size @@ -100,7 +100,6 @@ options FFS_NO_SNAPSHOT # No FFS snapsh options INET # IP protocol stack support #options INET6 # IPV6 #options IPSEC # IP security -#options IPSEC_ESP # IP security (encryption part; define w/IPSEC) #options IPSEC_DEBUG # debug for IP security #options GATEWAY # IP packet forwarding #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: maxv Date: Sat Feb 10 07:59:54 UTC 2018 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Remove the last reference to IPSEC_ESP. This option was deleted in 2013. To generate a diff of this commit: cvs rdiff -u -r1.99 -r1.100 src/sys/arch/sun2/conf/GENERIC Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: tsutsui Date: Sat Jul 26 17:32:07 UTC 2014 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Shrink GENERIC kernel to fit to bootloader's limit (2MB). Maybe now we can't call it GENERIC, but it still boots on TME. To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.90 src/sys/arch/sun2/conf/GENERIC 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.89 src/sys/arch/sun2/conf/GENERIC:1.90 --- src/sys/arch/sun2/conf/GENERIC:1.89 Sun Jun 30 21:38:59 2013 +++ src/sys/arch/sun2/conf/GENERIC Sat Jul 26 17:32:07 2014 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.89 2013/06/30 21:38:59 rmind Exp $ +# $NetBSD: GENERIC,v 1.90 2014/07/26 17:32:07 tsutsui Exp $ # # GENERIC machine description file # @@ -23,9 +23,9 @@ include arch/sun2/conf/std.sun2 -options INCLUDE_CONFIG_FILE # embed config file in kernel binary +#options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident GENERIC-$Revision: 1.89 $ +#ident GENERIC-$Revision: 1.90 $ makeoptions COPTS=-Os # optimize for size @@ -43,7 +43,7 @@ options SYSVSHM # System V shared memo #options INSECURE # disable kernel security level #options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) -options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel +#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel # Enable experimental buffer queue strategy for better responsiveness under # high disk I/O load. Use it with caution - it's not proven to be stable yet. @@ -68,23 +68,23 @@ options DDB # Compatibility options #options COMPAT_SUNOS # can run SunOS 4.1.1 executables -options COMPAT_43 # and 4.3BSD and ... +#options COMPAT_43 # and 4.3BSD and ... options COMPAT_16 # NetBSD 1.6 options COMPAT_20 # NetBSD 2.0 options COMPAT_30 # NetBSD 3.0 options COMPAT_40 # NetBSD 4.0 compatibility. options COMPAT_50 # NetBSD 5.0 compatibility. options COMPAT_60 # NetBSD 6.0 compatibility. -options COMPAT_AOUT_M68K # support for NetBSD a.out executables +#options COMPAT_AOUT_M68K # support for NetBSD a.out executables #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. -options EXEC_AOUT # support for a.out executables +#options EXEC_AOUT # support for a.out executables options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # Filesystem options file-system FFS # Berkeley Fast Filesystem file-system NFS # Sun NFS client support file-system CD9660 # ISO 9660 + Rock Ridge file system -file-system FDESC # /dev/fd/* +#file-system FDESC # /dev/fd/* file-system KERNFS # /kern file-system NULLFS # loopback file system #file-system OVERLAY # overlay file system @@ -92,14 +92,14 @@ file-system NULLFS # loopback file syst #file-system UNION # union file system file-system MFS # memory-based filesystem file-system PTYFS # /dev/pts/N support -file-system TMPFS # Efficient memory file-system +#file-system TMPFS # Efficient memory file-system #file-system UDF # experimental - OSTA UDF CD/DVD file-system -options NFSSERVER # nfs server support +#options NFSSERVER # nfs server support #options QUOTA # legacy UFS quotas #options QUOTA2 # new, in-filesystem UFS quotas #options FFS_EI # FFS Endian Independent support -options WAPBL # File system journaling support +#options WAPBL # File system journaling support #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental #options NFS_V2_ONLY # Exclude NFS3 code to save space options FFS_NO_SNAPSHOT # No FFS snapshot support @@ -221,15 +221,15 @@ options SCSI_OLD_NOINQUIRY ## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks. #xyc0 at mbio0 addr 0xee40 ipl 2 -xyc0 at vme0 addr 0xee40 irq 2 vect 0x48 +#xyc0 at vme0 addr 0xee40 irq 2 vect 0x48 #xyc1 at mbio0 addr 0xee48 ipl 2 -xyc1 at vme0 addr 0xee48 irq 2 vect 0x49 -xy* at xyc? drive ? +#xyc1 at vme0 addr 0xee48 irq 2 vect 0x49 +#xy* at xyc? drive ? # # accept filters -pseudo-device accf_data # dataready accept filter -pseudo-device accf_http # httpready accept filter +#pseudo-device accf_data # dataready accept filter +#pseudo-device accf_http # httpready accept filter ## Memory-disk device. pseudo-device md @@ -292,7 +292,7 @@ pseudo-device pty # pseudo-terminals # options RF_INCLUDE_PARITY_DECLUSTERING=1 # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 #pseudo-device fss # file system snapshot device -pseudo-device clockctl # user control of clock subsystem +#pseudo-device clockctl # user control of clock subsystem pseudo-device ksyms # /dev/ksyms #pseudo-device pf # PF packet filter #pseudo-device pflog # PF log if
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: tsutsui Date: Sat Jul 26 17:34:31 UTC 2014 Modified Files: src/sys/arch/sun2/conf: DISKLESS FOURMEG INSTALL Log Message: Comment out options and devices to sync GENERIC rev 1.90. To generate a diff of this commit: cvs rdiff -u -r1.51 -r1.52 src/sys/arch/sun2/conf/DISKLESS cvs rdiff -u -r1.55 -r1.56 src/sys/arch/sun2/conf/FOURMEG cvs rdiff -u -r1.48 -r1.49 src/sys/arch/sun2/conf/INSTALL 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/sun2/conf/DISKLESS diff -u src/sys/arch/sun2/conf/DISKLESS:1.51 src/sys/arch/sun2/conf/DISKLESS:1.52 --- src/sys/arch/sun2/conf/DISKLESS:1.51 Sun Jun 30 21:38:59 2013 +++ src/sys/arch/sun2/conf/DISKLESS Sat Jul 26 17:34:31 2014 @@ -1,4 +1,4 @@ -# $NetBSD: DISKLESS,v 1.51 2013/06/30 21:38:59 rmind Exp $ +# $NetBSD: DISKLESS,v 1.52 2014/07/26 17:34:31 tsutsui Exp $ # DISKLESS Sun2 (2/120, 2/170, 2/50, ...) # Supports root on: ie0, ec0 @@ -7,7 +7,7 @@ include arch/sun2/conf/std.sun2 #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident DISKLESS-$Revision: 1.51 $ +#ident DISKLESS-$Revision: 1.52 $ makeoptions COPTS=-Os # optimize for size @@ -15,7 +15,7 @@ makeoptions COPTS=-Os # optimize for s #options FPU_EMULATE # Needs to be set per system. i.e change these as you see fit -maxusers 8 +maxusers 4 # Standard system options options KTRACE # system call tracing @@ -23,7 +23,7 @@ options SYSVMSG # System V message que options SYSVSEM # System V semaphores options SYSVSHM # System V shared memory #options INSECURE # disable kernel security level -options USERCONF # userconf(4) support +#options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel @@ -45,26 +45,28 @@ options DDB # Compatibility options #options COMPAT_SUNOS # can run SunOS 4.1.1 executables -options COMPAT_43 # and 4.3BSD and ... +#options COMPAT_43 # and 4.3BSD and ... options COMPAT_16 # NetBSD 1.6 options COMPAT_20 # NetBSD 2.0 options COMPAT_30 # NetBSD 3.0 options COMPAT_40 # NetBSD 4.0 compatibility. +options COMPAT_50 # NetBSD 5.0 compatibility. +options COMPAT_60 # NetBSD 6.0 compatibility. #options COMPAT_AOUT_M68K # support for NetBSD a.out executables #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. -options EXEC_AOUT # support for a.out executables +#options EXEC_AOUT # support for a.out executables options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # Filesystem options #file-system FFS # Berkeley Fast Filesystem file-system NFS # Sun NFS client support #file-system CD9660 # ISO 9660 + Rock Ridge file system -file-system FDESC # /dev/fd/* +#file-system FDESC # /dev/fd/* file-system KERNFS # /kern file-system NULLFS # loopback file system -file-system OVERLAY # overlay file system +#file-system OVERLAY # overlay file system #file-system PROCFS # /proc -file-system UNION # union file system +#file-system UNION # union file system file-system MFS # memory-based filesystem file-system PTYFS # /dev/pts/N support @@ -229,4 +231,4 @@ pseudo-device pty # pseudo-terminals #options RAID_AUTOCONFIG # auto-configuration of RAID components #pseudo-device fss # file system snapshot device -pseudo-device clockctl # user control of clock subsystem +#pseudo-device clockctl # user control of clock subsystem Index: src/sys/arch/sun2/conf/FOURMEG diff -u src/sys/arch/sun2/conf/FOURMEG:1.55 src/sys/arch/sun2/conf/FOURMEG:1.56 --- src/sys/arch/sun2/conf/FOURMEG:1.55 Sun Jun 30 21:38:59 2013 +++ src/sys/arch/sun2/conf/FOURMEG Sat Jul 26 17:34:31 2014 @@ -1,4 +1,4 @@ -# $NetBSD: FOURMEG,v 1.55 2013/06/30 21:38:59 rmind Exp $ +# $NetBSD: FOURMEG,v 1.56 2014/07/26 17:34:31 tsutsui Exp $ # FOURMEG Sun2 (2/120, 2/170, 2/50, ...) # Supports root on: ie0, sd*, ... @@ -7,7 +7,7 @@ include arch/sun2/conf/std.sun2 #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident FOURMEG-$Revision: 1.55 $ +#ident FOURMEG-$Revision: 1.56 $ makeoptions COPTS=-Os # optimize for size @@ -50,9 +50,11 @@ options COMPAT_16 # NetBSD 1.6 options COMPAT_20 # NetBSD 2.0 options COMPAT_30 # NetBSD 3.0 options COMPAT_40 # NetBSD 4.0 compatibility. +options COMPAT_50 # NetBSD 5.0 compatibility. +options COMPAT_60 # NetBSD 6.0 compatibility. #options COMPAT_AOUT_M68K # support for NetBSD a.out executables #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. -options EXEC_AOUT # support for a.out executables +#options EXEC_AOUT # support for a.out executables options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # Filesystem options @@ -178,10 +180,10 @@ options SCSI_OLD_NOINQUIRY ## Xylogics 450 or 451 Multibus/VME SMD disk controllers and disks. #xyc0 at mbio0 addr 0xee40 ipl 2 -xyc0 at vme0
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: tsutsui Date: Sat Jul 26 17:32:07 UTC 2014 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: Shrink GENERIC kernel to fit to bootloader's limit (2MB). Maybe now we can't call it GENERIC, but it still boots on TME. To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.90 src/sys/arch/sun2/conf/GENERIC Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: tsutsui Date: Sat Jul 26 17:34:31 UTC 2014 Modified Files: src/sys/arch/sun2/conf: DISKLESS FOURMEG INSTALL Log Message: Comment out options and devices to sync GENERIC rev 1.90. To generate a diff of this commit: cvs rdiff -u -r1.51 -r1.52 src/sys/arch/sun2/conf/DISKLESS cvs rdiff -u -r1.55 -r1.56 src/sys/arch/sun2/conf/FOURMEG cvs rdiff -u -r1.48 -r1.49 src/sys/arch/sun2/conf/INSTALL Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Wed Oct 26 00:57:37 UTC 2011 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: revert previous. To generate a diff of this commit: cvs rdiff -u -r1.79 -r1.80 src/sys/arch/sun2/conf/GENERIC 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/sun2/conf/GENERIC diff -u src/sys/arch/sun2/conf/GENERIC:1.79 src/sys/arch/sun2/conf/GENERIC:1.80 --- src/sys/arch/sun2/conf/GENERIC:1.79 Wed Oct 26 00:56:59 2011 +++ src/sys/arch/sun2/conf/GENERIC Wed Oct 26 00:57:36 2011 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.79 2011/10/26 00:56:59 mrg Exp $ +# $NetBSD: GENERIC,v 1.80 2011/10/26 00:57:36 mrg Exp $ # # GENERIC machine description file # @@ -25,7 +25,7 @@ include arch/sun2/conf/std.sun2 options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident GENERIC-$Revision: 1.79 $ +#ident GENERIC-$Revision: 1.80 $ makeoptions COPTS=-Os # optimize for size @@ -54,12 +54,11 @@ options SYSCTL_INCLUDE_DESCR # Include # Which kernel debugger? Uncomment either this: options DDB # ... or these for KGDB (gdb remote target) -makeoptions DEBUG=-g # debugging symbols for gdb +#makeoptions DEBUG=-g # debugging symbols for gdb #options KGDB #options KGDB_DEV=0x0C00 # ttya=0C00 ttyb=0C01 # Other debugging options -options DDB_COMMANDONENTER=trace #options DDB_HISTORY_SIZE=100 # enable history editing in DDB #options DEBUG # kernel debugging code #options DIAGNOSTIC # extra kernel sanity checking
CVS commit: src/sys/arch/sun2/conf
Module Name:src Committed By: mrg Date: Wed Oct 26 00:57:37 UTC 2011 Modified Files: src/sys/arch/sun2/conf: GENERIC Log Message: revert previous. To generate a diff of this commit: cvs rdiff -u -r1.79 -r1.80 src/sys/arch/sun2/conf/GENERIC Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.