Subject: Re: stray interrupt on 7
To: John M Vinopal <banshee@gabriella.resort.com>
From: John F. Woods <jfw@FunHouse.com>
List: port-i386
Date: 04/12/1996 12:33:25
> I'm sure this has been addressed numerous times since day 0, but
> why exactly does one of my machines with lpt in the kernel generate
> these stray interrupts while the other one doesn't?  (totally different
> motherboards)

I began seeing this after installing a new kernel roughly March 18.
I use the line printer in interruptless mode, because I also have a
ProAudio Spectrum[*] using interrupt 7 (because I need all four serial
ports, gee I love the ISA bus); however, I now have the PAS completely
disabled and I'm still seeing the stray interrupts.  I was about to start
tearing my system apart to identify the failing hardware, but perhaps
it is software somewhere after all.  In the unlikely event it's interesting
to anyone, my kernel config file is appended below.

[*] This was just after the changes to the device interface routines, which
led to my finding a problem in the PAS initialization code (PR 2237, the
included fix still hasn't been examined).

> over a nine day uptime, this stray interrupt has triggered more often
> than anything but the serial card.
> IRQs    1       3       4       6       7       10      13      14
>         2       1137    9882021 1       3820321 1463056 0       1262774

What program generates this display?

================
#
#	JFW -- everything I need.
#

machine		i386		# architecture, used by config; REQUIRED

options		I486_CPU
options		MATH_EMULATE	# floating point emulation

# Some BIOSes don't get the size of extended memory right.  If you
# have a broken BIOS, uncomment the following and set the value
# properly for your system.
#options	EXTMEM_SIZE=...	# size of extended memory

#options	DUMMY_NOPS	# speed hack; recommended
options		XSERVER,UCONSOLE
#options	INSECURE	# insecure; allow /dev/mem writing for X
options		MACHINE_NONCONTIG

maxusers	32		# estimated number of users
options		TIMEZONE=300	# time zone to adjust RTC time by
options		DST=1		# daylight savings time used by RTC

options		SWAPPAGER	# paging; REQUIRED
options		VNODEPAGER	# mmap() of files
options		DEVPAGER	# mmap() of devices

#options		DDB		# in-kernel debugger
#makeoptions	DEBUG="-g"	# compile full symbol table
options		DIAGNOSTIC	# internal consistency checks
options		KTRACE		# system call tracing, a la 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		COMPAT_NOMID	# compatibility with 386BSD, BSDI, NetBSD 0.8,
options		COMPAT_09	# NetBSD 0.9,
options		COMPAT_10	# NetBSD 1.0,
options		COMPAT_43	# and 4.3BSD
options		TCP_COMPAT_42	# TCP bug compatibility with 4.2BSD

#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		USER_LDT	# user-settable LDT; used by WINE
options		LKM		# loadable kernel modules

options		FFS		# UFS
#options		QUOTA		# UFS quotas
#options		LFS		# log-structured file system
options		MFS		# memory file system

options		NFSCLIENT	# Network File System client
options		NFSSERVER	# Network File System server

options		CD9660		# ISO 9660 + Rock Ridge file system
options		MSDOSFS		# MS-DOS file system
options		FDESC		# /dev/fd
options		FIFO		# FIFOs; RECOMMENDED
options		KERNFS		# /kern
#options		NULLFS		# loopback file system
#options		PORTAL		# ?
options		PROCFS		# /proc
#options		UMAPFS		# NULLFS + uid and gid remapping
#options		UNION		# union file system

options	GATEWAY		# packet forwarding
options		INET		# IP + ICMP + TCP + UDP
#options		NS		# XNS
#options		ISO,TPIP	# OSI
#options		EON		# OSI tunneling over IP
#options		CCITT,LLC,HDLC	# X.25

config		netbsd	swap generic
options		GENERIC

mainbus0 at root

isa0	at mainbus0
#eisa0	at mainbus0
#pci0	at mainbus0 bus ?


npx0	at isa? port 0xf0 irq 13	# math coprocessor

pc0	at isa? port 0x60 irq 1		# generic PC console device
#vt0	at isa? port 0x60 irq 1

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

# lpt0	at isa? port 0x378 irq 7	# standard PC parallel ports
lpt0	at isa? port 0x378

aha0	at isa? port 0x330 irq ? drq ?	# Adaptec 154[02] SCSI controllers
scsibus* at aha?

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

fdc0	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
#fdc1	at isa? port 0x370 irq ? drq ?
fd*	at fdc? drive ?


ed0	at isa? port 0x300 iomem 0xcc000 irq 10

###pas0	at isa? port 0x220 irq 7 drq 1	# ProAudio Spectrum
#spkr0	at isa? port 0x61

pseudo-device	loop	1		# network loopback
pseudo-device	bpfilter 32		# packet filter
pseudo-device	ppp	2		# PPP

pseudo-device	pty	32		# pseudo-terminals

pseudo-device	vnd	4		# paging to files