Subject: bin/14229: syslogd uses 100% CPU when syslog.conf modified, HUP signal sent
To: None <gnats-bugs@gnats.netbsd.org>
From: Jim Breton <jamesb-netbsd@alongtheway.com>
List: netbsd-bugs
Date: 10/12/2001 08:40:23
>Number:         14229
>Category:       bin
>Synopsis:       syslogd uses 100% CPU when syslog.conf modified, HUP signal sent
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Oct 12 01:41:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        NetBSD 1.5.2
>Organization:
>Environment:
Pentium 100, 32M RAM
System: NetBSD lead.conflict.net 1.5.2 NetBSD 1.5.2 (LEAD) #8: Wed Sep 19 01:51:08 UTC 2001 jamesb@lead.conflict.net:/home/src/sys/arch/i386/compile/LEAD i386


>Description:
I have had this problem at least since 1.5.1, and may be related to
another syslogd 100% CPU usage issue I had on 1.5.[0-2] and asked about
on the netbsd-users mailing list on July 10, 2001.  (The Subject was:
"Strange problem with syslogd on NetBSD-release-1-5" and I believe that
issue would occur when syslogd would receive syslog packets from a Linux
machine I have on the same LAN.  I have not filed a PR on that one because
I cannot seem to reproduce it deliberately.)

Anyway, under normal operation, syslogd uses very little CPU time on my
system.  However, if I comment-out any of the lines in syslogd.conf that
writes to a file, for example /var/log/xferlog, then send syslogd a HUP
signal, it will climb to 100% CPU usage.

If I then change syslog.conf _back_ and send syslogd another HUP signal, it
will fall back down to normal levels.

While it is pinned at 100%, it does not log any syslog messages it
receives from other hosts on the network.  They do not show up in the log
files at all.


>How-To-Repeat:
See above for how I am able to reproduce this.

The problem is, though, is that I have two NetBSD machines -- this one and
another one (P3 500) -- and I cannot reproduce the problem on _that_ machine
(running the GENERIC kernel, though).  I also asked someone on IRC to try it
and he also was unable to reproduce it.

I am including my dmesg, syslog.conf, and kernel config below.

The machine is behind a couple of firewalls but if someone would like an
account to take a look at it I'd be glad to move it to the outside and
set up an account for somebody.

Thanks.


dmesg:

NetBSD 1.5.2 (LEAD) #8: Wed Sep 19 01:51:08 UTC 2001
    jamesb@lead.conflict.net:/home/src/sys/arch/i386/compile/LEAD
cpu0: Intel Pentium (P54C) (586-class), 99.72 MHz
total memory = 32384 KB
avail memory = 26920 KB
using 430 buffers containing 1720 KB of memory
BIOS32 rev. 0 found at 0xfd7f0
mainbus0 (root)
pnpbios0 at mainbus0: nodes 17, max len 126
lpt0 at pnpbios0 index 11 (PNP0400)
lpt0: io 378-37b, irq 7
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82437FX System Controller (TSC) (rev. 0x01)
pcib0 at pci0 dev 7 function 0
pcib0: Intel 82371FB PCI-to-ISA Bridge (PIIX) (rev. 0x02)
pciide0 at pci0 dev 7 function 1: Intel 82371FB IDE controller (PIIX) (rev. 0x02)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <Maxtor 85120 A8 ->
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 4884 MB, 9924 cyl, 16 head, 63 sec, 512 bytes/sect x 10003456 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
pciide0: secondary channel wired to compatibility mode
pciide0: disabling secondary channel (no drives)
vga1 at pci0 dev 8 function 0: Cirrus Logic CL-GD5434-8 (rev. 0xfc)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
vr0 at pci0 dev 19 function 0: VIA VT3043 (Rhine) 10/100 Ethernet
vr0: interrupting at irq 10
vr0: Ethernet address: 00:50:ba:c9:54:e1
dmphy0 at vr0 phy 8: DM9101 10/100 media interface, rev. 0
dmphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
isa0 at pcib0
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pcppi0 at isa0 port 0x61
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
isapnp0: no ISA Plug 'n Play devices found
biomask fb75 netmask ff75 ttymask fff7
IPsec: Initialized Security Association Processing.
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
IP Filter: v3.4.9 initialized.  Default = pass all, Logging = enabled
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0
lpt0: out of paper
lpt0: offline


syslog.conf:

#	$NetBSD: syslog.conf,v 1.6 1997/02/21 09:04:26 mikel Exp $

*.err;kern.*;auth.notice;authpriv.none;mail.crit	/dev/console
*.info;auth,authpriv,cron,ftp,kern,lpr,mail.none	/var/log/messages
kern.debug						/var/log/messages

# The authpriv log file should be restricted access; these
# messages shouldn't go to terminals or publically-readable
# files.
auth,authpriv.info					/var/log/authlog
#auth,authpriv.info					@192.168.1.166
auth,authpriv.info					/dev/lpt0

cron.info						/var/cron/log
ftp.info						/var/log/xferlog
lpr.info						/var/log/lpd-errs
mail.info						/var/log/maillog
#uucp.info						/var/spool/uucp/ERRORS

*.emerg							*
*.notice;auth.debug					root


kernel config:

#	$NetBSD: GENERIC,v 1.354.2.15 2001/05/06 15:18:54 he Exp $
#
#	GENERIC -- everything that's currently supported
#

include "arch/i386/conf/std.i386"

#ident 		"GENERIC-$Revision: 1.354.2.15 $"

maxusers	32		# estimated number of users

# CPU support.  At least one is REQUIRED.
#options 	I386_CPU
#options 	I486_CPU
options 	I586_CPU
#options 	I686_CPU

# CPU-related options.
#options 	MATH_EMULATE	# floating point emulation
options 	VM86		# virtual 8086 emulation
#options 	USER_LDT	# user-settable LDT; used by WINE
# eliminate delay no-ops in I/O; recommended on all but very old machines
#options 	DUMMY_NOPS

# delay between "rebooting ..." message and hardware reset, in milliseconds
#options 	CPURESET_DELAY=2000

# This option allows you to force a serial console at the specified
# I/O address.   see console(4) for details.
#options 	"CONSDEVNAME=\"com\"",CONADDR=0x2f8,CONSPEED=57600
#	you don't want the option below ON iff you are using the
#	serial console option of the new boot strap code.
#options 	CONS_OVERRIDE	# Always use above! independent of boot info

# The following options override the memory sizes passed in from the boot
# block.  Use them *only* if the boot block is unable to determine the correct
# values.  Note that the BIOS may *correctly* report less than 640k of base
# memory if the extended BIOS data area is located at the top of base memory
# (as is the case on most recent systems).
#options 	REALBASEMEM=639		# size of base memory (in KB)
#options 	REALEXTMEM=15360	# size of extended memory (in KB)

# Standard system options

#options 	UCONSOLE	# users can use TIOCCONS (for xconsole)
#options 	INSECURE	# disable kernel security levels

options 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
options 	NTP		# NTP phase/frequency locked loop

options 	KTRACE		# system call tracing via ktrace(1)

options 	SYSVMSG		# System V-like message queues
options 	SYSVSEM		# System V-like semaphores
options 	SYSVSHM		# System V-like memory sharing
#options 	SHMMAXPGS=1024	# 1024 pages is the default

#options 	LKM		# loadable kernel modules

# Diagnostic/debugging support options
#options 	DIAGNOSTIC	# expensive kernel consistency checks
#options 	DEBUG		# expensive debugging checks/support
#options 	KMEMSTATS	# kernel memory statistics (vmstat -m)
#options 	DDB		# in-kernel debugger
#options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
#options 	KGDB		# remote debugger
#options 	"KGDB_DEVNAME=\"com\"",KGDBADDR=0x3f8,KGDBRATE=9600
#makeoptions	DEBUG="-g"	# compile full symbol table

# Compatibility options
#options 	COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
#options 	COMPAT_09	# NetBSD 0.9,
#options 	COMPAT_10	# NetBSD 1.0,
#options 	COMPAT_11	# NetBSD 1.1,
#options 	COMPAT_12	# NetBSD 1.2,
#options 	COMPAT_13	# NetBSD 1.3,
#options 	COMPAT_14	# NetBSD 1.4,
#options 	COMPAT_43	# and 4.3BSD
#options 	COMPAT_386BSD_MBRPART # recognize old partition ID

#options 	COMPAT_SVR4	# binary compatibility with SVR4
#options 	COMPAT_IBCS2	# binary compatibility with SCO and ISC
#options 	COMPAT_LINUX	# binary compatibility with Linux
#options 	COMPAT_FREEBSD	# binary compatibility with FreeBSD
#options 	COMPAT_PECOFF   # kernel support to run Win32 apps

# File systems
file-system 	FFS		# UFS
#file-system 	EXT2FS		# second extended file system (linux)
file-system 	LFS		# log-structured file system
file-system 	MFS		# memory file system
#file-system 	NFS		# Network File System client
#file-system 	NTFS		# Windows/NT file system (experimental)
file-system 	CD9660		# ISO 9660 + Rock Ridge file system
#file-system 	MSDOSFS		# MS-DOS file system
file-system 	FDESC		# /dev/fd
file-system 	KERNFS		# /kern
file-system 	NULLFS		# loopback file system
file-system 	OVERLAY		# overlay file system
#file-system 	PORTAL		# portal filesystem (still experimental)
file-system 	PROCFS		# /proc
file-system 	UMAPFS		# NULLFS + uid and gid remapping
file-system 	UNION		# union file system
#file-system	CODA		# Coda File System; also needs vcoda (below)

# File system options
options 	QUOTA		# UFS quotas
#options 	FFS_EI		# FFS Endian Independent support
options 	SOFTDEP         # FFS soft updates support.
#options 	NFSSERVER	# Network File System server
#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
				# immutable) behave as system flags.

# Networking options
#options 	GATEWAY		# packet forwarding
options 	INET		# IP + ICMP + TCP + UDP
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 	MROUTING	# IP multicast routing
options 	NS		# XNS
#options 	NSIP		# XNS tunneling over IP
options 	ISO,TPIP	# OSI
#options 	EON		# OSI tunneling over IP
#options 	CCITT,LLC,HDLC	# X.25
#options 	NETATALK	# AppleTalk networking protocols
#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
#options 	PPP_DEFLATE	# Deflate compression support for PPP
#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
options 	PFIL_HOOKS	# pfil(9) packet filter hooks
options 	IPFILTER_LOG	# ipmon(8) log support

# Compatibility with 4.2BSD implementation of TCP/IP.  Not recommended.
#options 	TCP_COMPAT_42

# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options 	EISAVERBOSE	# verbose EISA device autoconfig messages
options 	MIIVERBOSE	# verbose PHY autoconfig messages
options 	PCIVERBOSE	# verbose PCI device autoconfig messages
#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
#options 	SCSIVERBOSE	# human readable SCSI error messages
#options 	USBVERBOSE	# verbose USB device autoconfig messages
#options 	PNPBIOSVERBOSE	# verbose PnP BIOS messages
#options	PNPBIOSDEBUG	# more fullsome Pnp BIOS debugging messages
#options 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM

#
# wscons options
#
# builtin terminal emulations
#options 	WSEMUL_SUN		# sun terminal emulation
options 	WSEMUL_VT100		# VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
options 	WS_KERNEL_FG=WSCOL_GREEN
#options 	WS_KERNEL_BG=WSCOL_BLACK
# compatibility to other console drivers
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
# see dev/pckbc/wskbdmap_mfii.c for implemented layouts
#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
# allocate a number of virtual screens at autoconfiguration time
#options 	WSDISPLAY_DEFAULTSCREENS=4
# use a large software cursor that doesn't blink
options 	PCDISPLAY_SOFTCURSOR

# Kernel root file system and dump configuration.
config		netbsd	root on ? type ?
#config		netbsd	root on sd0a type ffs
#config		netbsd	root on ? type nfs

#
# Device configuration
#

mainbus0 at root

#apm0	at mainbus0			# Advanced power management

# Tuning for power management, see apm(4) for more details.
#options 	APM_NO_IDLE		# Don't call BIOS CPU idle function
#options 	APM_V10_ONLY		# Use only the APM 1.0 calls
#options 	APM_NO_POWEROFF		# Don't power off on halt(8)
#options 	APM_POWER_PRINT		# Print stats on the console
#options 	APM_DISABLE_INTERRUPTS=0 # Don't disable interrupts


# Basic Bus Support

# Plug-and-Play BIOS and attached devices

pnpbios*	at mainbus?

# mainboard audio chips
#ess*		at pnpbios? index ?	# ESS AudioDrive
#sb*		at pnpbios? index ?	# NeoMagic 256AV in sb mode
#wss*		at pnpbios? index ?	# NeoMagic 256AV in wss mode
#ym*		at pnpbios? index ?	# OPL3-SA3

# com port
# If enabled, consider changing "com0", "com1", and "com2" under "ISA Serial
# Interfaces" to "com*", otherwise com2 will attach at pnpbios? and there
# will be no com0.  A side effect is pcmcia (and other) com? previously
# starting at com3 may attach as com1 or com2.
#com*		at pnpbios? index ?	# serial ports

# parallel port
# The above "com*" comments apply, cf. "lpt0" under "ISA parallel
# "printer interfaces".
lpt*		at pnpbios? index ?	# parallel ports

#pckbc*		at pnpbios? index ?	# PC keyboard/mouse controller
#fdc*		at pnpbios? index ?	# floppy controller

# IDE controller on Toshiba Portege 3000 series (crippled PCI device)
#pciide* at pnpbios? index ?

# PCI bus support
pci*	at mainbus? bus ?
pci*	at pchb? bus ?
pci*	at ppb? bus ?

# Configure PCI using BIOS information
#options 	PCIBIOS			# PCI BIOS support
#options 	PCIBIOSVERBOSE		# PCI BIOS verbose info
#options 	PCIBIOS_ADDR_FIXUP	# fixup PCI I/O addresses
#options 	PCIBIOS_BUS_FIXUP	# fixup PCI bus numbering
#options 	PCIBIOS_INTR_FIXUP	# fixup PCI interrupt routing
#options 	PCIBIOS_IRQS_HINT=0x0a00 # PCI interrupts hint. IRQ 9 or 11
#options 	PCIBIOS_INTR_GUESS	# see pcibios(4)
#options 	PCIINTR_DEBUG		# super-verbose PCI interrupt fixup

# PCI bridges
pchb*	at pci? dev ? function ?	# PCI-Host bridges
pceb*	at pci? dev ? function ?	# PCI-EISA bridges
pcib*	at pci? dev ? function ?	# PCI-ISA bridges
ppb*	at pci? dev ? function ?	# PCI-PCI bridges
# XXX 'puc's aren't really bridges, but there's no better place for them here
puc*	at pci? dev ? function ?	# PCI "universal" comm. cards

# EISA bus support
eisa*	at mainbus?
eisa*	at pceb?

# ISA bus support
isa*	at mainbus?
isa*	at pceb?
isa*	at pcib?

# PCMCIA bus support
#pcmcia*	at pcic? controller ? socket ?
#pcmcia*	at tcic? controller ? socket ?

# ISA PCMCIA controllers
#pcic0	at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
#pcic1	at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000
#tcic0	at isa? port 0x240 iomem 0xd0000 iosiz 0x10000

# PCI PCMCIA controllers
#pcic0	at pci? dev? function ?

# ISA Plug-and-Play bus support
isapnp0	at isa?

# ISA Plug-and-Play PCMCIA controllers
#pcic*	at isapnp?

# CardBus bridge support
#cbb*		at pci? dev ? function ?
#cardslot*	at cbb?	

# CardBus bus support
#cardbus*	at cardslot?
#pcmcia* 	at cardslot?

# Coprocessor Support

# Math Coprocessor support
npx0	at isa? port 0xf0 irq 13	# x86 math coprocessor


# Console Devices

# ISA console
#pc0	at isa? port 0x60 irq 1		# pccons generic PC console driver
# Keyboard layout configuration for pccons
#options 	FRENCH_KBD
#options 	FINNISH_KBD
#options 	GERMAN_KBD
#options 	NORWEGIAN_KBD
# pccons-specific options:
#options 	XSERVER_DDB	# PF12 gets you into DDB when X is running
#options 	XSERVER		# X server support


# wscons
pckbc0		at isa?			# pc keyboard controller
pckbd*		at pckbc?		# PC keyboard
# "opms" should not be enabled together with "pms" or "pmsi"
pms*		at pckbc?		# PS/2 mouse for wsmouse
#pmsi*		at pckbc?		# PS/2 "Intelli"mouse for wsmouse
#opms*		at pckbc?		# backwards compatible PS/2 mouse
vga0		at isa?
vga*		at pci? dev ? function ?
pcdisplay0	at isa?			# CGA, MDA, EGA, HGA
wsdisplay*	at vga? console ?
wsdisplay*	at pcdisplay? console ?
wskbd* 		at pckbd? console ?
wsmouse*	at pms? mux 0
#wsmouse*	at pmsi? mux 0

pcppi0		at isa?
sysbeep0	at pcppi?

# Serial Devices

# PCI serial interfaces
com*	at puc? port ?			# 16x50s on "universal" comm boards
cy*	at pci? dev ? function ?	# Cyclades Cyclom-Y serial boards
cz*	at pci? dev ? function ?	# Cyclades-Z multi-port serial boards

# ISA Plug-and-Play serial interfaces
com*	at isapnp?			# Modems and serial boards

# PCMCIA serial interfaces
#com*	at pcmcia? function ?		# Modems and serial cards

#pcmcom*	at pcmcia? function ?		# PCMCIA multi-port serial cards
#com*	at pcmcom? slave ?		# ...and the slave devices

# CardBus serial interfaces
#com*	at cardbus? function ?		# Modems and serial cards

# ISA serial interfaces
#options 	COM_HAYESP		# adds Hayes ESP serial board support
com0	at isa? port 0x3f8 irq 4	# Standard PC serial ports
com1	at isa? port 0x2f8 irq 3
com2	at isa? port 0x3e8 irq 5
#com3	at isa? port 0x2e8 irq 9
#ast0	at isa? port 0x1a0 irq 5	# AST 4-port serial cards
#com*	at ast? slave ?
#boca0	at isa? port 0x100 irq 5	# BOCA 8-port serial cards
#boca0	at isa? port 0x100 irq 5	# BOCA 16-port serial cards (BB2016)
#boca1	at isa? port 0x140 irq 5	# this line is also needed for BB2016
#com*	at boca? slave ?
#tcom0	at isa? port 0x100 irq 7	# TC-800 8-port serial cards
#com*	at tcom? slave ?
#rtfps0	at isa? port 0x1230 irq 10	# RT 4-port serial cards
#com*	at rtfps? slave ?
#cy0	at isa? iomem 0xd4000 irq 12	# Cyclades serial cards
#addcom0 at isa? port 0x108 irq 5	# Addonics FlexPort 8S
#com*	at addcom? slave ?

# Parallel Printer Interfaces

# PCI parallel printer interfaces
#lpt*	at puc? port ?			# || ports on "universal" comm boards

# ISA parallel printer interfaces
lpt*	at isa? port 0x378 irq 7	# standard PC parallel ports
lpt*	at isa? port 0x278
lpt*	at isa? port 0x3bc

# LM7[89] and compatible hardware monitors
#lm0	at isa?	port 0x290		# other common ports: 0x280, 0x310

# VIA VT82C686A hardware monitor
#viapm*	at pci? dev ? function ?
#viaenv* at viapm?

# SCSI Controllers and Devices

# PCI SCSI controllers
#adv*	at pci? dev ? function ?	# AdvanSys 1200[A,B], 9xx[U,UA] SCSI
#adw*	at pci? dev ? function ?	# AdvanSys 9x0UW[D], 3940U[2,3]W SCSI
#ahc*	at pci? dev ? function ?	# Adaptec [23]94x, aic78x0 SCSI
#bha*	at pci? dev ? function ?	# BusLogic 9xx SCSI
#dpt*	at pci? dev ? function ?	# DPT SmartCache/SmartRAID
#isp*	at pci? dev ? function ?	# Qlogic ISP [12]0x0 SCSI/FibreChannel
#ncr*	at pci? dev ? function ?	# NCR 53c8xx SCSI (old driver)
#siop*	at pci? dev ? function ?	# Symbios 53c8xx SCSI
#pcscp*	at pci? dev ? function ?	# AMD 53c974 PCscsi-PCI SCSI

# EISA SCSI controllers
#ahb*	at eisa? slot ?			# Adaptec 174[02] SCSI
#ahc*	at eisa? slot ?			# Adaptec 274x, aic7770 SCSI
#bha*	at eisa? slot ?			# BusLogic 7xx SCSI
#dpt*	at eisa? slot ?			# DPT EATA SCSI
#uha*	at eisa? slot ?			# UltraStor 24f SCSI

# PCMCIA SCSI controllers
#aic*	at pcmcia? function ?		# Adaptec APA-1460 SCSI
#esp*	at pcmcia? function ?		# Qlogic ESP406/FAS408 SCSI

# ISA Plug-and-Play SCSI controllers
#aha*	at isapnp? 			# Adaptec AHA-154[02
#aic*	at isapnp?			# Adaptec AHA-1520B

# ISA SCSI controllers
#adv0	at isa? port ? irq ? drq ?	# AdvanSys APB-514[02]
#aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI
#aha1	at isa? port 0x334 irq ? drq ?
#ahc0	at isa? port ? irq ?		# Adaptec 284x SCSI
#aic0	at isa? port 0x340 irq 11	# Adaptec 152[02] SCSI
#bha0	at isa? port 0x330 irq ? drq ?	# BusLogic [457]4X SCSI
#bha1	at isa? port 0x334 irq ? drq ?
# The "nca" and "dpt" probes might give false hits or hang your machine.
#dpt0	at isa? port 0x170 irq ? drq ?	# DPT SmartCache/SmartRAID
#nca0	at isa? port 0x360 irq 15	# Port-mapped NCR 53C80 contoller
#nca1	at isa? iomem 0xd8000 irq 5	# Memory-mapped controller (T128, etc.)
#sea0	at isa? iomem 0xc8000 irq 5	# Seagate/Future Domain SCSI
#uha0	at isa? port 0x330 irq ? drq ?	# UltraStor [13]4f SCSI
#uha1	at isa? port 0x340 irq ? drq ?
#wds0	at isa? port 0x350 irq 15 drq 6	# WD7000 and TMC-7000 controllers
#wds1	at isa? port 0x358 irq 11 drq 5

# CardBus SCSI cards
#ahc*	at cardbus? dev ? function ?	# Adaptec ADP-1480

# SCSI bus support
#scsibus* at adv?
#scsibus* at adw?
#scsibus* at aha?
#scsibus* at ahb?
#scsibus* at ahc?
#scsibus* at aic?
#scsibus* at bha?
#scsibus* at dpt?
#scsibus* at esp?
#scsibus* at isp?
#scsibus* at nca?
#scsibus* at ncr?
#scsibus* at pcscp?
#scsibus* at sea?
#scsibus* at siop?
#scsibus* at uha?
#scsibus* at wds?

# SCSI devices
#sd*	at scsibus? target ? lun ?	# SCSI disk drives
#st*	at scsibus? target ? lun ?	# SCSI tape drives
#cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
#ch*	at scsibus? target ? lun ?	# SCSI autochangers
#ses*	at scsibus? target ? lun ?	# SCSI Enclosure Services devices
#ss*	at scsibus? target ? lun ?	# SCSI scanners
#uk*	at scsibus? target ? lun ?	# SCSI unknown

# RAID controllers and devices
#cac*	at pci? dev ? function ?	# Compaq array controller
#ca*	at cac? unit ?			# Compaq array disk device

# IDE and related devices
# PCI IDE controllers - see pciide(4) for supported hardware.
# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
# how to set up DMA modes for this chip. This may work, or may cause
# a machine hang with some controllers.
pciide* at pci? dev ? function ? flags 0x0000

# ISA Plug-and-Play IDE controllers
wdc*	at isapnp? 

# PCMCIA IDE controllers
#wdc*	at pcmcia? function ?

# ISA ST506, ESDI, and IDE controllers
# Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
# fall back to 16bits I/O if 32bits I/O are not functional).
# Some controllers pass the initial 32bit test, but will fail later.
wdc0	at isa? port 0x1f0 irq 14 flags 0x00
wdc1	at isa? port 0x170 irq 15 flags 0x00

# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd*	at wdc? channel ? drive ? flags 0x0000
wd*	at pciide? channel ? drive ? flags 0x0000

# ATAPI bus support
atapibus* at wdc? channel ?
atapibus* at pciide? channel ?

# ATAPI devices
# flags have the same meaning as for IDE drives.
cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
#sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
#uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown


# Miscellaneous mass storage devices

# ISA floppy
fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
#fdc1	at isa? port 0x370 irq ? drq ?
fd*	at fdc? drive ?			# the drives themselves
# some machines need you to do this instead of fd*
#fd0	at fdc0 drive 0

# ISA CD-ROM devices
#mcd0	at isa? port 0x300 irq 10	# Mitsumi CD-ROM drives

# ISA tape devices
# note: the wt driver conflicts unpleasantly with SMC boards at the
# same I/O address. The probe reprograms their EEPROMs. Don't
# uncomment it unless you are actually using it.
#wt0	at isa? port 0x308 irq 5 drq 1	# Archive and Wangtek QIC tape drives


# Network Interfaces

# PCI network interfaces
#de*	at pci? dev ? function ?	# DEC 21x4x-based Ethernet
#en*	at pci? dev ? function ?	# ENI/Adaptec ATM
#ep*	at pci? dev ? function ?	# 3Com 3c59x
#ex*	at pci? dev ? function ?	# 3Com 90x[B]
#epic*	at pci? dev ? function ?	# SMC EPIC/100 Ethernet
#esh*	at pci? dev ? function ?	# Essential HIPPI card
#fpa*	at pci? dev ? function ?	# DEC DEFPA FDDI
fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
#le*	at pci? dev ? function ?	# PCnet-PCI Ethernet
#lmc*	at pci? dev ? function ?	# Lan Media Corp SSI/HSSI/DS3
ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
#ntwoc*	at pci? dev ? function ?	# Riscom/N2 PCI Sync Serial
#rtk*	at pci? dev ? function ?	# Realtek 8129/8139
#sip*	at pci? dev ? function ?	# SiS 900 Ethernet
#ti*	at pci? dev ? function ?	# Alteon ACEnic gigabit Ethernet
#tl*	at pci? dev ? function ?	# ThunderLAN-based Ethernet
#tlp*	at pci? dev ? function ?	# DECchip 21x4x (and clones) Ethernet
#options 	TLP_MATCH_21040
#options 	TLP_MATCH_21041
#options 	TLP_MATCH_21140
#options 	TLP_MATCH_21142
vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet

# EISA network interfaces
ep*	at eisa? slot ?			# 3Com 3c579 Ethernet
#fea*	at eisa? slot ?			# DEC DEFEA FDDI
tlp*	at eisa? slot ?			# DEC DE-425 Ethernet

# ISA Plug-and-Play network interfaces
ep*	at isapnp?			# 3Com 3c509 Ethernet
ne*	at isapnp?			# NE2000-compatible Ethernet
#tr*	at isapnp?			# IBM/3COM TROPIC Token-Ring

# PCMCIA network interfaces
#an*	at pcmcia? function ?		# Aironet PC4500/PC4800 (802.11)
#awi*	at pcmcia? function ?		# BayStack 650/660 (802.11FH/DS)
#cnw*	at pcmcia? function ?		# Xircom/Netwave AirSurfer
#ep*	at pcmcia? function ?		# 3Com 3c589 and 3c562 Ethernet
#mbe*	at pcmcia? function ?		# MB8696x based Ethernet
#ne*	at pcmcia? function ?		# NE2000-compatible Ethernet
#ray*	at pcmcia? function ?		# Raytheon Raylink (802.11)
#sm*	at pcmcia? function ?		# Megahertz Ethernet
#wi*	at pcmcia? function ?		# Lucent WaveLan IEEE (802.11)
#xi*	at pcmcia? function ?		# Xircom CreditCard Ethernet

#mhzc*	at pcmcia? function ?		# Megahertz Ethernet/Modem combo cards
#com*	at mhzc?
#sm*	at mhzc?

# ISA network interfaces
#ate0	at isa? port 0x2a0 irq ?		# AT1700
#cs0	at isa? port 0x300 iomem ? irq ? drq ?	# CS8900 Ethernet
#ec0	at isa? port 0x250 iomem 0xd8000 irq 9	# 3Com 3c503 Ethernet
#eg0	at isa? port 0x280 irq 9		# 3C505 ethernet cards
#el0	at isa? port 0x300 irq 9		# 3C501 ethernet cards
ep*	at isa? port ? irq ?			# 3C509 ethernet cards
#ef0	at isa? port 0x360 iomem 0xd0000 irq 7	# 3C507
#ai0	at isa? port 0x360 iomem 0xd0000 irq 7	# StarLAN
#fmv0	at isa? port 0x2a0 irq ?		# FMV-180 series
#ix0	at isa? port 0x300 irq 10		# EtherExpress/16
#iy0	at isa? port 0x360 irq ?		# EtherExpress PRO 10 ISA
#lc0	at isa? port 0x320 iomem ? irq ?	# DEC EtherWORKS III (LEMAC)
#depca0	at isa? port 0x300 iomem 0xc8000 iosiz 0x8000 irq 5	# DEPCA
#le*	at depca?
#nele0	at isa? port 0x320 irq 9 drq 7		# NE2100
#le*	at nele?
#ntwoc0	at isa? port 0x300 irq 5 iomem 0xc8000 flags 1	# Riscom/N2 sync serial
#bicc0	at isa? port 0x320 irq 10 drq 7		# BICC IsoLan
#le*	at bicc?
ne0	at isa? port 0x280 irq 9		# NE[12]000 ethernet cards
ne1	at isa? port 0x300 irq 10
#sm0	at isa? port 0x300 irq 10		# SMC91C9x Ethernet
#tr0	at isa? port 0xa20 iomem 0xd8000 irq ?  # IBM TROPIC based Token-Ring
#tr1	at isa? port 0xa24 iomem 0xd0000 irq ?  # IBM TROPIC based Token-Ring
#tr*	at isa? port ? irq ?			# 3COM TROPIC based Token-Ring
#we0	at isa? port 0x280 iomem 0xd0000 irq 9	# WD/SMC Ethernet
#we1	at isa? port 0x300 iomem 0xcc000 irq 10

# CardBus network cards
#ex*	at cardbus? dev ? function ?	# 3Com 3C575TX
#fxp*	at cardbus? dev ? function ?	# Intel i8255x
#rtk*	at cardbus? dev ? function ?	# Realtek 8129/8139
#tlp*	at cardbus? dev ? function ?	# DECchip 21143

# MII/PHY support
dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
exphy*	at mii? phy ?			# 3Com internal PHYs
icsphy*	at mii? phy ?			# Integrated Circuit Systems ICS1890
inphy*	at mii? phy ?			# Intel 82555 PHYs
iophy*	at mii? phy ?			# Intel 82553 PHYs
lxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
nsphy*	at mii? phy ?			# NS83840 PHYs
nsphyter* at mii? phy ?			# NS83843 PHYs
qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
tlphy*	at mii? phy ?			# ThunderLAN PHYs
tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
ukphy*	at mii? phy ?			# generic unknown PHYs

# USB Controller and Devices

# PCI USB controllers
#ohci*	at pci?	dev ? function ?	# Open Host Controller
#uhci*	at pci?	dev ? function ?	# Universal Host Controller (Intel)

# CardBus USB controllers
#ohci*	at cardbus? dev ? function ?	# Open Host Controller

# USB bus support
#usb*	at ohci?
#usb*	at uhci?

# USB Hubs
#uhub*	at usb?
#uhub*	at uhub? port ? configuration ? interface ?

# USB Mice
#ums*	at uhub? port ? configuration ? interface ?
#wsmouse*	at ums? mux 0

# USB Keyboards
#ukbd*	at uhub? port ? configuration ? interface ?
#wskbd*	at ukbd? console ? mux 1

# USB Generic HID devices
#uhid*	at uhub? port ? configuration ? interface ?

# USB Printer
#ulpt*	at uhub? port ? configuration ? interface ?

# USB Modem
#umodem*	at uhub? port ? configuration ?
#ucom*	at umodem?

# USB Mass Storage
#umass*	at uhub? port ? configuration ? interface ?
#atapibus* at umass? channel ?
#scsibus* at umass? channel ?

# USB audio
#uaudio*	at uhub? port ? configuration ?

# USB Ethernet adapters
#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters

# Prolofic PL2301/PL2302 host-to-host adapter
#upl*	at uhub? port ?

# Serial adapters
# FTDI FT8U100AX serial adapter
#uftdi*	at uhub? port ?
#ucom*	at uftdi? portno ?

# Diamond Multimedia Rio 500
#urio*	at uhub? port ?

# USB Handspring Visor
#uvisor*	at uhub? port ?
#ucom*	at uvisor?

# USB Generic driver
#ugen*	at uhub? port ?

# Audio Devices

# PCI audio devices
#auvia*	at pci? dev ? function ?	# VIA VT82C686A integrated AC'97 Audio
#clcs*	at pci? dev ? function ?	# Cirrus Logic CS4280
#clct*	at pci? dev ? function ?	# Cirrus Logic CS4281
#cmpci*	at pci? dev ? function ?	# C-Media CMI8338/8738
#eap*	at pci? dev ? function ?	# Ensoniq AudioPCI
#esm*	at pci? dev ? function ?	# ESS Maestro-1/2/2e PCI Audio Accelerator
#eso*	at pci? dev ? function ?	# ESS Solo-1 PCI AudioDrive
#fms*	at pci? dev ? function ?	# Forte Media FM801
#neo*	at pci? dev ? function ?	# NeoMagic 256 AC'97 Audio
#sv*	at pci? dev ? function ?	# S3 SonicVibes
#yds*	at pci? dev ? function ?	# Yamaha DS-1 PCI Audio

# ISA Plug-and-Play audio devices
#ess*	at isapnp?			# ESS Tech ES1887, ES1888, ES888 audio
#guspnp*	at isapnp?			# Gravis Ultra Sound PnP audio
#sb*	at isapnp?			# SoundBlaster-compatible audio
#wss*	at isapnp?			# Windows Sound System
#ym*	at isapnp?			# Yamaha OPL3-SA3 audio

# ISA audio devices
# the "aria" probe might give false hits
#aria0	at isa? port 0x290 irq 10 		# Aria
#ess0	at isa? port 0x220 irq 5 drq 1 drq2 5	# ESS 18XX
#gus0	at isa? port 0x220 irq 7 drq 1 drq2 6	# Gravis Ultra Sound
#pas0	at isa? port 0x220 irq 7 drq 1		# ProAudio Spectrum
#pss0	at isa? port 0x220 irq 7 drq 6  	# Personal Sound System
#sp0	at pss0 port 0x530 irq 10 drq 0		# 	sound port driver
#sb0	at isa? port 0x220 irq 5 drq 1 drq2 5	# SoundBlaster
#wss0	at isa? port 0x530 irq 10 drq 0	drq2 1	# Windows Sound System

#cms0	at isa? port 0x220			# Creative Music System

# OPL[23] FM synthesizers
#opl0	at isa? port 0x388	# use only if not attached to sound card
#opl*	at eso?
#opl*	at ess?
#opl*	at fms?
#opl*	at sb?
#opl*	at sv?
#opl*	at wss?
#opl*	at yds?
#opl*	at ym?

# Audio support
#audio*	at aria?
#audio*	at auvia?
#audio*	at clcs?
#audio*	at clct?
#audio*	at cmpci?
#audio*	at eap?
#audio*	at esm?
#audio*	at eso?
#audio*	at ess?
#audio*	at fms?
#audio*	at gus?
#audio*	at guspnp?
#audio*	at neo?
#audio*	at pas?
#audio*	at sb?
#audio*	at sp?
#audio*	at sv?
#audio*	at uaudio?
#audio*	at wss?
#audio*	at yds?
#audio*	at ym?

# MPU 401 UARTs
#mpu*	at isa? port 0x330 irq 9        # MPU401 or compatible card
#mpu*	at eso?
#mpu*	at fms?
#mpu*	at sb?
#mpu*	at yds?
#mpu*	at ym?

# MIDI support
#midi*	at clcs?		# Cirrus Logic CS4280 MIDI port
#midi*	at clct?		# Cirrus Logic CS4281 MIDI port
#midi*	at cms?			# Creative Music System
#midi*	at eap?			# 137[01] MIDI port
#midi*	at mpu?			# MPU 401
#midi*	at opl?			# OPL FM synth
#midi*	at pcppi?		# MIDI interface to the PC speaker
#midi*	at sb?			# SB1 MIDI port

# The spkr driver provides a simple tone interface to the built in speaker.
#spkr0	at pcppi?		# PC speaker

# TV cards

# Brooktree 848/849/878/879 based TV cards
#bktr* at pci? dev ? function ?

# Mice

# ISA busmice
#lms0	at isa? port 0x23c irq 5	# Logitech bus mouse
#lms1	at isa? port 0x238 irq 5
#mms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
#mms1	at isa? port 0x238 irq 5
#wsmouse*	at lms? mux 0
#wsmouse*	at mms? mux 0
# backwards compatible versions
#olms0	at isa? port 0x23c irq 5	# Logitech bus mouse
#olms1	at isa? port 0x238 irq 5
#omms0	at isa? port 0x23c irq 5	# Microsoft InPort mouse
#omms1	at isa? port 0x238 irq 5
#opms0	at pc? irq 12		# PS/2 auxiliary port mouse


# Joysticks

# ISA Plug-and-Play joysticks
#joy*	at isapnp?			# Game ports (usually on audio cards)

# PCI joysticks
#joy*	at pci?				# Game ports (usually on audio cards)

# ISA joysticks. Probe is a little strange; add only if you have one.
#joy0	at isa? port 0x201


# Miscellaneous Devices

# Planetconnect Satellite receiver driver.
#satlink0 at isa? port 0x300 drq 1


# Pull in optional local configuration
include	"arch/i386/conf/GENERIC.local"


# Pseudo-Devices

# disk/mass storage pseudo-devices
#pseudo-device	ccd		4	# concatenated/striped disk devices
#pseudo-device	raid		4	# RAIDframe disk driver
#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
pseudo-device	md		1	# memory disk device (ramdisk)
pseudo-device	vnd		4	# disk-like interface to files

# network pseudo-devices
pseudo-device	bpfilter	8	# Berkeley packet filter
pseudo-device	ipfilter		# IP filter (firewall) and NAT
pseudo-device	loop			# network loopback
pseudo-device	ppp		2	# Point-to-Point Protocol
pseudo-device	sl		2	# Serial Line IP
pseudo-device	strip		2	# Starmode Radio IP (Metricom)
pseudo-device	tun		2	# network tunneling over tty
pseudo-device	gre		2	# generic L3 over IP tunnel
pseudo-device	ipip		2	# IP Encapsulation within IP (RFC 2003)
pseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
pseudo-device	vlan			# IEEE 802.1q encapsulation

# miscellaneous pseudo-devices
pseudo-device	pty		64	# pseudo-terminals
pseudo-device	tb		1	# tablet line discipline
#pseudo-device	sequencer	1	# MIDI sequencer
# rnd works; RND_COM does not on port i386 yet.
pseudo-device	rnd			# /dev/random and in-kernel generator
#options 	RND_COM			# use "com" randomness as well (BROKEN)

# a pseudo device needed for Coda	# also needs CODA (above)
#pseudo-device	vcoda		4	# coda minicache <-> venus comm.

# mouse & keyboard multiplexor pseudo-devices
pseudo-device	wsmux		2
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: