Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/amd64/conf An attempt to create a fully modular ker...
details: https://anonhg.NetBSD.org/src/rev/b5e944bba49f
branches: trunk
changeset: 346822:b5e944bba49f
user: christos <christos%NetBSD.org@localhost>
date: Thu Aug 04 07:22:41 2016 +0000
description:
An attempt to create a fully modular kernel by including GENERIC and
undefining all the drivers we have modules for. This is done to reduce
the kernel footprint for DTRACE and also to test that the modularized
drivers work. Current issues:
1. builtin drivers can't depend on modularized drivers (the modularized
drivers are attempted to load as builtins).
2. there is no way to "no define" drivers
3. it is not always obvious by their names which drivers/options correspond
to which modules.
4. right now critical drivers that would need to be pre-loaded (ffs,
exec_elf64) are still built-in so that we don't need to alter the boot
blocks to boot.
Ideally modstat should show none of the drivers as built-in but we are far
from that.
diffstat:
sys/arch/amd64/conf/MODULAR | 114 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 114 insertions(+), 0 deletions(-)
diffs (118 lines):
diff -r 9284e4b3c2ce -r b5e944bba49f sys/arch/amd64/conf/MODULAR
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/amd64/conf/MODULAR Thu Aug 04 07:22:41 2016 +0000
@@ -0,0 +1,114 @@
+# $NetBSD: MODULAR,v 1.1 2016/08/04 07:22:41 christos Exp $
+#
+# Try to exclude all the drivers in GENERIC that have been modularized
+# XXX: incomplete
+
+include "arch/amd64/conf/GENERIC"
+options MODULAR # new style module(7) framework
+options MODULAR_DEFAULT_AUTOLOAD
+
+no acpicpu* at cpu?
+no est0 at cpu0
+no powernow0 at cpu0
+no vmt0 at cpu0
+
+no options COMPAT_15 # NetBSD 1.5,
+no options COMPAT_16 # NetBSD 1.6,
+no options COMPAT_20 # NetBSD 2.0,
+no options COMPAT_30 # NetBSD 3.0,
+no options COMPAT_40 # NetBSD 4.0,
+no options COMPAT_50 # NetBSD 5.0,
+no options COMPAT_60 # NetBSD 6.0, and
+no options COMPAT_70 # NetBSD 7.0 binary compatibility.
+no options COMPAT_43 # and 4.3BSD
+#options COMPAT_386BSD_MBRPART # recognize old partition ID
+
+no options COMPAT_OSSAUDIO
+no options COMPAT_NETBSD32
+no options COMPAT_LINUX
+no options COMPAT_LINUX32 # req. COMPAT_LINUX and COMPAT_NETBSD32
+no options EXEC_ELF32
+no options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
+
+no options SYSVMSG # System V-like message queues
+no options SYSVSEM # System V-like semaphores
+no options SYSVSHM # System V-like memory sharing
+
+# XXX: for now
+#no file-system FFS # UFS
+no file-system MFS # memory file system
+no file-system NFS # Network File System client
+no file-system TMPFS # Efficient memory file-system
+no file-system EXT2FS # second extended file system (linux)
+no file-system LFS # log-structured file system
+no file-system NTFS # Windows/NT file system (experimental)
+no file-system CD9660 # ISO 9660 + Rock Ridge file system
+no file-system MSDOSFS # MS-DOS file system
+no file-system FDESC # /dev/fd
+no file-system KERNFS # /kern
+no file-system NULLFS # loopback file system
+no file-system OVERLAY # overlay file system
+no file-system PROCFS # /proc
+no file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
+no file-system SMBFS # experimental - CIFS; also needs nsmb (below)
+no file-system UMAPFS # NULLFS + uid and gid remapping
+no file-system UNION # union file system
+no file-system CODA # Coda File System; also needs vcoda (below)
+no file-system PTYFS # /dev/ptm support
+
+no options PPP_BSDCOMP # BSD-Compress compression support for PPP
+no options PPP_DEFLATE # Deflate compression support for PPP
+
+no acpiacad* at acpi? # ACPI AC Adapter
+no acpibat* at acpi? # ACPI Battery
+no acpibut* at acpi? # ACPI Button
+no acpifan* at acpi? # ACPI Fan
+no acpilid* at acpi? # ACPI Lid Switch
+no acpitz* at acpi? # ACPI Thermal Zone
+no acpivga* at acpi? # ACPI Display Adapter
+no acpiwdrt* at acpi? # ACPI Watchdog Resource Table
+no acpiwmi* at acpi? # ACPI WMI Mapper
+
+no options NFSSERVER
+
+no axe* at uhub?
+no rum* at uhub?
+no urtwn* at uhub?
+no urtw* at uhub?
+no run* at uhub?
+no athn* at uhub?
+
+no pseudo-device crypto # /dev/crypto device
+no pseudo-device swcrypto # software crypto implementation
+
+# disk/mass storage pseudo-devices
+no pseudo-device ccd # concatenated/striped disk devices
+no pseudo-device cgd # cryptographic disk devices
+no pseudo-device raid # RAIDframe disk driver
+no pseudo-device fss # file system snapshot device
+no pseudo-device putter # for puffs and pud
+
+no pseudo-device vnd # disk-like interface to files
+
+# network pseudo-devices
+no pseudo-device bpfilter # Berkeley packet filter
+no pseudo-device ipfilter # IP filter (firewall) and NAT
+no pseudo-device npf # NPF packet filter
+
+#
+# accept filters
+no pseudo-device accf_data # "dataready" accept filter
+no pseudo-device accf_http # "httpready" accept filter
+
+# miscellaneous pseudo-devices
+no pseudo-device clockctl # user control of clock subsystem
+no pseudo-device vcoda # coda minicache <-> venus comm.
+
+# a pseudo device needed for SMBFS
+no pseudo-device nsmb # experimental - SMB requester
+
+# pseudo audio device driver
+no pseudo-device pad
+
+# userland interface to drivers, including autoconf and properties retrieval
+no pseudo-device drvctl
Home |
Main Index |
Thread Index |
Old Index