Date: Fri, 15 Sep 2000 06:31:51 -0700 From: "Tomlinson, Drew" <Drew.Tomlinson@lc.ca.gov> To: "'FreeBSD Questions (E-mail)'" <freebsd-questions@FreeBSD.org> Subject: Part #2 - Newbie Help Determining Lost Root After Upgrade From 4. 0 to 4.1 Message-ID: <8C224DC088D8D111B67D0000F67AC17E029C4C4B@ldcmsx01.lc.ca.gov>
next in thread | raw e-mail | index | archive | help
This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. --Boundary_(ID_1IndadkOkyDRKFaKXwGLwQ) Content-type: text/plain; charset="iso-8859-1" I've sent this message twice but never saw it post to the group. I haven't received any errors but shorter messages go through fine. Thus, I assume it's too long and have broken it into parts. Begin Part #2 /usr/src/sys/i386/conf # # GENERIC -- Generic kernel configuration file for FreeBSD/i386 # # For more information on this file, please read the handbook section on # Kernel Configuration Files: # # http://www.freebsd.org/handbook/kernelconfig-config.html # # The handbook is also available locally in /usr/share/doc/handbook # if you've installed the doc distribution, otherwise always see the # FreeBSD World Wide Web server (http://www.FreeBSD.ORG/) for the # latest information. # # An exhaustive list of options and more detailed explanations of the # device lines is also present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # # $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246 2000/03/09 16:32:55 jlemon Exp $ machine i386 #cpu I386_CPU cpu I486_CPU #cpu I586_CPU #cpu I686_CPU ident BLACKSHEEP maxusers 32 #makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols #options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options INET6 #IPv6 communications protocols options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MD_ROOT #MD is a potential root device options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, NFS required #options MSDOSFS #MSDOS Filesystem options CD9660 #ISO 9660 Filesystem options CD9660_ROOT #CD-ROM usable as root, CD9660 required options PROCFS #Process filesystem options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI options UCONSOLE #Allow users to grab the console options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options P1003_1B #Posix P1003_1B real-time extentions options _KPOSIX_PRIORITY_SCHEDULING options ICMP_BANDLIM #Rate limit bad replies # To make an SMP kernel, the next two are needed #options SMP # Symmetric MultiProcessor Kernel #options APIC_IO # Symmetric (APIC) I/O # Optionally these may need tweaked, (defaults shown): #options NCPU=2 # number of CPUs #options NBUS=4 # number of busses #options NAPIC=1 # number of IO APICs #options NINTR=24 # number of INTs device isa #device eisa #device pci # Floppy drives device fdc0 at isa? port IO_FD1 irq 6 drq 2 device fd0 at fdc0 drive 0 device fd1 at fdc0 drive 1 # ATA and ATAPI devices device ata0 at isa? port IO_WD1 irq 14 device ata1 at isa? port IO_WD2 irq 15 #device ata #device atadisk # ATA disk drives #device atapicd # ATAPI CDROM drives #device atapifd # ATAPI floppy drives #device atapist # ATAPI tape drives #options ATA_STATIC_ID #Static device numbering #options ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI devices # SCSI Controllers ... All commented out ... # SCSI peripherals ... All commented out ... # RAID controllers ... All commented out ... # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc0 at isa? port IO_KBD device atkbd0 at atkbdc? irq 1 #device psm0 at atkbdc? irq 12 device vga0 at isa? # splash screen/screen saver pseudo-device splash # syscons is the default console driver, resembling an SCO console device sc0 at isa? # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver #device vt0 at isa? #options XSERVER # support for X server on a vt console #options FAT_CURSOR # start with block cursor # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines #options PCVT_SCANSET=2 # IBM keyboards are non-std # Floating point support - do not disable. device npx0 at nexus? port IO_NPX irq 13 # Power management support (see LINT for more options) #device apm0 at nexus? disable flags 0x20 # Advanced Power Management # PCCARD (PCMCIA) support ... All commented out ... # Serial (COM) ports device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? port IO_COM2 irq 3 #device sio2 at isa? disable port IO_COM3 irq 5 #device sio3 at isa? disable port IO_COM4 irq 9 # Parallel port device ppc0 at isa? irq 7 device ppbus # Parallel port bus (required) device lpt # Printer device plip # TCP/IP over parallel device ppi # Parallel port interface device #device vpo # Requires scbus and da # PCI Ethernet NICs. ... All commented out ... # PCI Ethernet NICs that use the common MII bus controller code. ... All commented out ... # ISA Ethernet NICs. device ed0 at isa? port 0x280 irq 10 iomem 0xd8000 #device ex #device ep # WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really # exists only as a PCMCIA device, so there is no ISA attatement needed # and resources will always be dynamically assigned by the pccard code. #device wi # Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP # mode (the factory default). If you set the switches on your ISA # card for a manually chosen I/O address and IRQ, you must specify # those paremeters here. #device an # The probe order of these is presently determined by i386/isa/isa_compat.c. device ie0 at isa? port 0x300 irq 10 iomem 0xd0000 device fe0 at isa? port 0x300 device le0 at isa? port 0x300 irq 5 iomem 0xd0000 device lnc0 at isa? port 0x280 irq 10 drq 0 device cs0 at isa? port 0x300 device sn0 at isa? port 0x300 irq 10 # requires PCCARD (PCMCIA) support to be activated #device xe0 at isa? # Pseudo devices - the number indicates how many units to allocated. pseudo-device loop # Network loopback pseudo-device ether # Ethernet support pseudo-device sl 1 # Kernel SLIP pseudo-device ppp 1 # Kernel PPP pseudo-device tun # Packet tunnel. pseudo-device pty # Pseudo-ttys (telnet etc) pseudo-device md # Memory "disks" pseudo-device gif 4 # IPv6 and IPv4 tunneling pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation) # The `bpf' pseudo-device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! pseudo-device bpf #Berkeley packet filter # USB support ... All commented out ... # USB Ethernet, requires mii ... All commented out ... --Boundary_(ID_1IndadkOkyDRKFaKXwGLwQ) Content-type: text/html; charset="iso-8859-1" Content-transfer-encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; = charset=3Diso-8859-1"> <META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version = 5.5.2650.12"> <TITLE>Part #2 - Newbie Help Determining Lost Root After Upgrade From = 4.0 to 4.1</TITLE> </HEAD> <BODY> <P><FONT SIZE=3D2>I've sent this message twice but never saw it post to = the group. I haven't received any errors but shorter messages go = through fine. Thus, I assume it's too long and have broken it = into parts.</FONT></P> <P><FONT SIZE=3D2>Begin Part #2</FONT> </P> <P><FONT SIZE=3D2>/usr/src/sys/i386/conf</FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># GENERIC -- Generic kernel configuration file for = FreeBSD/i386</FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># For more information on this file, please read the = handbook section on</FONT> <BR><FONT SIZE=3D2># Kernel Configuration Files:</FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># <A = HREF=3D"http://www.freebsd.org/handbook/kernelconfig-config.html" = TARGET=3D"_blank">http://www.freebsd.org/handbook/kernelconfig-config.ht= ml</A></FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># The handbook is also available locally in = /usr/share/doc/handbook</FONT> <BR><FONT SIZE=3D2># if you've installed the doc distribution, = otherwise always see the</FONT> <BR><FONT SIZE=3D2># FreeBSD World Wide Web server (<A = HREF=3D"http://www.FreeBSD.ORG/" = TARGET=3D"_blank">http://www.FreeBSD.ORG/</A>) for the</FONT> <BR><FONT SIZE=3D2># latest information.</FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># An exhaustive list of options and more detailed = explanations of the</FONT> <BR><FONT SIZE=3D2># device lines is also present in the ./LINT = configuration file. If you are</FONT> <BR><FONT SIZE=3D2># in doubt as to the purpose or necessity of a line, = check first in LINT.</FONT> <BR><FONT SIZE=3D2>#</FONT> <BR><FONT SIZE=3D2># $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246 = 2000/03/09 16:32:55 jlemon Exp $</FONT> </P> <P><FONT = SIZE=3D2>machine = i386</FONT> <BR><FONT = SIZE=3D2>#cpu  = ; I386_CPU</FONT> <BR><FONT = SIZE=3D2>cpu = I486_CPU</FONT> <BR><FONT = SIZE=3D2>#cpu  = ; I586_CPU</FONT> <BR><FONT = SIZE=3D2>#cpu  = ; I686_CPU</FONT> <BR><FONT = SIZE=3D2>ident &nbs= p; BLACKSHEEP</FONT> <BR><FONT SIZE=3D2>maxusers = 32</FONT> </P> <P><FONT SIZE=3D2>#makeoptions = DEBUG=3D-g &n= bsp; #Build kernel with gdb(1) debug = symbols</FONT> </P> <P><FONT SIZE=3D2>#options = MATH_EMULATE = #Support for x87 emulation</FONT> <BR><FONT = SIZE=3D2>options = INET &n= bsp; #InterNETworking</FONT> <BR><FONT = SIZE=3D2>options = INET6 &= nbsp; #IPv6 communications = protocols</FONT> <BR><FONT = SIZE=3D2>options = FFS &nb= sp; #Berkeley Fast = Filesystem</FONT> <BR><FONT = SIZE=3D2>options = FFS_ROOT &nbs= p; #FFS usable as root device [keep = this!]</FONT> <BR><FONT = SIZE=3D2>options = MFS &nb= sp; #Memory = Filesystem</FONT> <BR><FONT = SIZE=3D2>options = MD_ROOT  = ; #MD is a potential root device</FONT> <BR><FONT = SIZE=3D2>options = NFS &nb= sp; #Network = Filesystem</FONT> <BR><FONT = SIZE=3D2>options = NFS_ROOT &nbs= p; #NFS usable as root device, NFS = required</FONT> </P> <P><FONT SIZE=3D2>#options = MSDOSFS  = ; #MSDOS Filesystem</FONT> <BR><FONT = SIZE=3D2>options = CD9660 = #ISO 9660 Filesystem</FONT> <BR><FONT = SIZE=3D2>options = CD9660_ROOT &= nbsp; #CD-ROM usable as root, CD9660 required</FONT> <BR><FONT = SIZE=3D2>options = PROCFS = #Process filesystem</FONT> <BR><FONT = SIZE=3D2>options = COMPAT_43 &nb= sp; #Compatible with BSD 4.3 [KEEP THIS!]</FONT> <BR><FONT = SIZE=3D2>options = SCSI_DELAY=3D15000 #Delay (in = ms) before probing SCSI</FONT> <BR><FONT = SIZE=3D2>options = UCONSOLE &nbs= p; #Allow users to grab the console</FONT> <BR><FONT = SIZE=3D2>options = USERCONFIG &n= bsp; #boot -c editor</FONT> <BR><FONT = SIZE=3D2>options = VISUAL_USERCONFIG #visual boot -c = editor</FONT> <BR><FONT = SIZE=3D2>options = KTRACE = #ktrace(1) support</FONT> <BR><FONT = SIZE=3D2>options = SYSVSHM  = ; #SYSV-style shared memory</FONT> <BR><FONT = SIZE=3D2>options = SYSVMSG  = ; #SYSV-style message queues</FONT> <BR><FONT = SIZE=3D2>options = SYSVSEM  = ; #SYSV-style semaphores</FONT> <BR><FONT = SIZE=3D2>options = P1003_1B &nbs= p; #Posix P1003_1B real-time extentions</FONT> <BR><FONT = SIZE=3D2>options = _KPOSIX_PRIORITY_SCHEDULING</FONT> <BR><FONT = SIZE=3D2>options ICMP_BA= NDLIM = #Rate limit bad replies</FONT> </P> <P><FONT SIZE=3D2># To make an SMP kernel, the next two are = needed</FONT> <BR><FONT SIZE=3D2>#options = SMP &nb= sp; # Symmetric = MultiProcessor Kernel</FONT> <BR><FONT SIZE=3D2>#options = APIC_IO  = ; # Symmetric (APIC) I/O</FONT> <BR><FONT SIZE=3D2># Optionally these may need tweaked, (defaults = shown):</FONT> <BR><FONT SIZE=3D2>#options = NCPU=3D2 &nbs= p; # number of CPUs</FONT> <BR><FONT SIZE=3D2>#options = NBUS=3D4 &nbs= p; # number of busses</FONT> <BR><FONT SIZE=3D2>#options = NAPIC=3D1 &nb= sp; # number of IO APICs</FONT> <BR><FONT SIZE=3D2>#options = NINTR=3D24 &n= bsp; # number of INTs</FONT> </P> <P><FONT = SIZE=3D2>device = isa</FONT> <BR><FONT = SIZE=3D2>#device = eisa</FONT> <BR><FONT = SIZE=3D2>#device = pci</FONT> </P> <P><FONT SIZE=3D2># Floppy drives</FONT> <BR><FONT = SIZE=3D2>device = fdc0 at isa? port IO_FD1 irq 6 drq 2</FONT> <BR><FONT = SIZE=3D2>device = fd0 at fdc0 drive 0</FONT> <BR><FONT = SIZE=3D2>device = fd1 at fdc0 drive 1</FONT> </P> <P><FONT SIZE=3D2># ATA and ATAPI devices</FONT> <BR><FONT = SIZE=3D2>device = ata0 at isa? port IO_WD1 irq 14</FONT> <BR><FONT = SIZE=3D2>device = ata1 at isa? port IO_WD2 irq 15</FONT> <BR><FONT = SIZE=3D2>#device = ata</FONT> <BR><FONT = SIZE=3D2>#device = atadisk  = ; # ATA disk drives</FONT> <BR><FONT = SIZE=3D2>#device = atapicd  = ; # ATAPI CDROM drives</FONT> <BR><FONT = SIZE=3D2>#device = atapifd  = ; # ATAPI floppy drives</FONT> <BR><FONT = SIZE=3D2>#device = atapist  = ; # ATAPI tape drives</FONT> <BR><FONT SIZE=3D2>#options = ATA_STATIC_ID  = ; #Static device numbering</FONT> <BR><FONT SIZE=3D2>#options = ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI = devices</FONT> </P> <P><FONT SIZE=3D2># SCSI Controllers</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># SCSI peripherals</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># RAID controllers</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># atkbdc0 controls both the keyboard and the PS/2 = mouse</FONT> <BR><FONT = SIZE=3D2>device = atkbdc0 at isa? port IO_KBD</FONT> <BR><FONT = SIZE=3D2>device = atkbd0 at atkbdc? irq 1</FONT> <BR><FONT = SIZE=3D2>#device = psm0 at atkbdc? irq 12</FONT> </P> <P><FONT = SIZE=3D2>device = vga0 at isa?</FONT> </P> <P><FONT SIZE=3D2># splash screen/screen saver</FONT> <BR><FONT SIZE=3D2>pseudo-device splash</FONT> </P> <P><FONT SIZE=3D2># syscons is the default console driver, resembling = an SCO console</FONT> <BR><FONT = SIZE=3D2>device = sc0 at isa?</FONT> </P> <P><FONT SIZE=3D2># Enable this and PCVT_FREEBSD for pcvt vt220 = compatible console driver</FONT> <BR><FONT = SIZE=3D2>#device = vt0 at isa?</FONT> <BR><FONT SIZE=3D2>#options = XSERVER  = ; # support for X server on a vt = console</FONT> <BR><FONT SIZE=3D2>#options = FAT_CURSOR &n= bsp; # start with block cursor</FONT> <BR><FONT SIZE=3D2># If you have a ThinkPAD, uncomment this along with = the rest of the PCVT lines</FONT> <BR><FONT SIZE=3D2>#options = PCVT_SCANSET=3D2 = # IBM keyboards are non-std</FONT> </P> <P><FONT SIZE=3D2># Floating point support - do not disable.</FONT> <BR><FONT = SIZE=3D2>device = npx0 at nexus? port IO_NPX irq 13</FONT> </P> <P><FONT SIZE=3D2># Power management support (see LINT for more = options)</FONT> <BR><FONT = SIZE=3D2>#device = apm0 at nexus? disable flags 0x20 # Advanced Power = Management</FONT> </P> <BR> <P><FONT SIZE=3D2># PCCARD (PCMCIA) support</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># Serial (COM) ports</FONT> <BR><FONT = SIZE=3D2>device = sio0 at isa? port IO_COM1 flags 0x10 irq 4</FONT> <BR><FONT = SIZE=3D2>device = sio1 at isa? port IO_COM2 irq 3</FONT> <BR><FONT = SIZE=3D2>#device = sio2 at isa? disable port IO_COM3 irq 5</FONT> <BR><FONT = SIZE=3D2>#device = sio3 at isa? disable port IO_COM4 irq 9</FONT> </P> <P><FONT SIZE=3D2># Parallel port</FONT> <BR><FONT = SIZE=3D2>device = ppc0 at isa? irq 7</FONT> <BR><FONT = SIZE=3D2>device = ppbus # = Parallel port bus (required)</FONT> <BR><FONT = SIZE=3D2>device = lpt &nb= sp; # Printer</FONT> <BR><FONT = SIZE=3D2>device = plip = # TCP/IP over parallel</FONT> <BR><FONT = SIZE=3D2>device = ppi &nb= sp; # Parallel port interface device</FONT> <BR><FONT = SIZE=3D2>#device = vpo &nb= sp; # Requires scbus and da</FONT> </P> <BR> <P><FONT SIZE=3D2># PCI Ethernet NICs.</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># PCI Ethernet NICs that use the common MII bus = controller code.</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> <P><FONT SIZE=3D2># ISA Ethernet NICs.</FONT> <BR><FONT = SIZE=3D2>device = ed0 at isa? port 0x280 irq 10 iomem = 0xd8000</FONT> <BR><FONT = SIZE=3D2>#device = ex</FONT> <BR><FONT = SIZE=3D2>#device = ep</FONT> <BR><FONT SIZE=3D2># WaveLAN/IEEE 802.11 wireless NICs. Note: the = WaveLAN/IEEE really</FONT> <BR><FONT SIZE=3D2># exists only as a PCMCIA device, so there is no ISA = attatement needed</FONT> <BR><FONT SIZE=3D2># and resources will always be dynamically assigned = by the pccard code.</FONT> <BR><FONT = SIZE=3D2>#device = wi</FONT> <BR><FONT SIZE=3D2># Aironet 4500/4800 802.11 wireless NICs. Note: the = declaration below will</FONT> <BR><FONT SIZE=3D2># work for PCMCIA and PCI cards, as well as ISA = cards set to ISA PnP</FONT> <BR><FONT SIZE=3D2># mode (the factory default). If you set the = switches on your ISA</FONT> <BR><FONT SIZE=3D2># card for a manually chosen I/O address and IRQ, = you must specify</FONT> <BR><FONT SIZE=3D2># those paremeters here.</FONT> <BR><FONT = SIZE=3D2>#device = an</FONT> <BR><FONT SIZE=3D2># The probe order of these is presently determined = by i386/isa/isa_compat.c.</FONT> <BR><FONT = SIZE=3D2>device = ie0 at isa? port 0x300 irq 10 iomem = 0xd0000</FONT> <BR><FONT = SIZE=3D2>device = fe0 at isa? port 0x300</FONT> <BR><FONT = SIZE=3D2>device = le0 at isa? port 0x300 irq 5 iomem = 0xd0000</FONT> <BR><FONT = SIZE=3D2>device = lnc0 at isa? port 0x280 irq 10 drq 0</FONT> <BR><FONT = SIZE=3D2>device = cs0 at isa? port 0x300</FONT> <BR><FONT = SIZE=3D2>device = sn0 at isa? port 0x300 irq 10</FONT> <BR><FONT SIZE=3D2># requires PCCARD (PCMCIA) support to be = activated</FONT> <BR><FONT = SIZE=3D2>#device = xe0 at isa?</FONT> </P> <P><FONT SIZE=3D2># Pseudo devices - the number indicates how many = units to allocated.</FONT> <BR><FONT SIZE=3D2>pseudo-device = loop = # Network loopback</FONT> <BR><FONT SIZE=3D2>pseudo-device = ether # = Ethernet support</FONT> <BR><FONT SIZE=3D2>pseudo-device = sl 1 = # Kernel SLIP</FONT> <BR><FONT SIZE=3D2>pseudo-device = ppp 1 # = Kernel PPP</FONT> <BR><FONT SIZE=3D2>pseudo-device = tun &nb= sp; # Packet tunnel.</FONT> <BR><FONT SIZE=3D2>pseudo-device = pty &nb= sp; # Pseudo-ttys (telnet etc)</FONT> <BR><FONT SIZE=3D2>pseudo-device = md &nbs= p; # Memory "disks"</FONT> <BR><FONT SIZE=3D2>pseudo-device = gif 4 # = IPv6 and IPv4 tunneling</FONT> <BR><FONT SIZE=3D2>pseudo-device faith = 1 # IPv6-to-IPv4 relaying = (translation)</FONT> </P> <P><FONT SIZE=3D2># The `bpf' pseudo-device enables the Berkeley Packet = Filter.</FONT> <BR><FONT SIZE=3D2># Be aware of the administrative consequences of = enabling this!</FONT> <BR><FONT SIZE=3D2>pseudo-device = bpf &nb= sp; #Berkeley packet filter</FONT> </P> <P><FONT SIZE=3D2># USB support</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> <BR><FONT SIZE=3D2># USB Ethernet, requires mii</FONT> <BR><FONT SIZE=3D2>... All commented out ...</FONT> </P> </BODY> </HTML> --Boundary_(ID_1IndadkOkyDRKFaKXwGLwQ)-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8C224DC088D8D111B67D0000F67AC17E029C4C4B>