Date: Fri, 08 Dec 1995 16:07:55 -0800 From: Dave Truesdell <truesdel@nas.nasa.gov> To: hackers@freebsd.org Subject: Hint's needed for debugging a SCSI CDROM changer problem. Message-ID: <8125.818467675@nas.nasa.gov>
next in thread | raw e-mail | index | archive | help
I've been attempting to get a SCSI CDROM changer working FreeBSD 2.1(-stable).
The device a Mountain "CD7" (aka. NRC MBR-7). I can mount and access the first
four CDROM's without any problems. However, when I attempt to mount the 5th
CDROM I soon get either (what appears to be) a hung SCSI bus, or I get "Fatal
trap 12"'s in random parts of the kernel. (Two crashes I've saved had the
faults occur in both the isofs and vm code.)
Can anyone suggest ways of either getting information out of a hung system, or
tracking the fatal page faults back to their source? I'm not afraid of reading
kernel code, but I'm not overly familiar with the Intel VM architecture, so
any hint's would be greatly appreciated.
The messages from the two panics and my config file is included below, if those
would provide any useful information.
crash #1:
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x8
fault code = supervisor write, page not present
instruction pointer = 0x8:0xf0102092
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 14 (find)
interrupt mask =
panic: page fault
syncing disks... done
dumping to dev 401, offset 0
dump 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Crash #2:
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x4e
fault code = supervisor read, page not present
instruction pointer = 0x8:0xf0125f2c
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 54 (ifconfig)
interrupt mask = bio
panic: page fault
syncing disks... 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 giving up
dumping to dev 401, offset 0
dump 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Config file:
#
#
##############################################################################
## Motherboard: UC4914-G VL-bus with Intel 486DX2-66 cpu.
## 20MB 60ns main memory; 128k cache.
##############################################################################
machine "i386"
#cpu "I386_CPU"
cpu "I486_CPU"
#cpu "I586_CPU" # aka Pentium(tm)
ident POOH
# The `maxusers' parameter controls the static sizing of a number of
# internal system tables.
maxusers 20
# Set the default max number of processes per user to 128 and
# the max number of open files per user to 128
options "CHILD_MAX=128"
options "OPEN_MAX=128"
config kernel root on sd0 swap on sd0 and sd1 and sd2 dumps on sd0
# A math emulator is mandatory if you wish to run on hardware which
# does not have a floating-point processor. Pick either the original,
# bogus (but freely-distributable) math emulator, or a much more
# fully-featured but GPL-licensed emulator taken from Linux.
#options MATH_EMULATE # OLD x87 math emulator
#options GPL_MATH_EMULATE # NEW/GPL x87 math emulator
#####################################################################
# COMPATIBILITY OPTIONS
#
# Implement system calls compatible with 4.3BSD and older versions of
# FreeBSD.
#
options "COMPAT_43"
# SV style shared memory and IPC (Necessary for Amanda)
#
options SYSVSHM
options SYSVSEM
options SYSVMSG
#####################################################################
# DEBUGGING OPTIONS
#options DDB # Kernel debugger
options KTRACE # System call tracing with ktrace(2).
#####################################################################
# NETWORKING OPTIONS
options INET #Internet communications protocols
# Network interfaces:
# The `loop' pseudo-device is mandatory when networking is enabled.
# The `ether' pseudo-device provides generic code to handle
# Ethernets; it is mandatory when a Ethernet device driver is
# configured.
# The 'fddi' pseudo-device provides generic code to support FDDI.
# The `sppp' pseudo-device serves a similar role for certain types
# of synchronous PPP links (like `cx').
# The `sl' pseudo-device implements the Serial Line IP (SLIP) service.
# The `ppp' pseudo-device implements the Point-to-Point Protocol.
# The `bpfilter' pseudo-device enables the Berkeley Packet Filter. Be
# aware of the legal and administrative consequences of enabling this
# option. The number of devices determines the maximum number of
# simultaneous BPF clients programs runnable.
# The `disc' pseudo-device implements a minimal network interface,
# which throws away all packets sent and never receives any. It is
# included for testing purposes.
# The `tun' pseudo-device implements the User Process PPP (iijppp)
#
pseudo-device ether #Generic Ethernet
#pseudo-device fddi #Generic FDDI
#pseudo-device sppp #Generic Synchronous PPP
pseudo-device loop #Network loopback device
pseudo-device sl 1 #Serial Line IP
pseudo-device ppp 1 #Point-to-point protocol
pseudo-device bpfilter 4 #Berkeley packet filter
pseudo-device disc #Discard device
pseudo-device tun 1 #Tunnel driver(user process ppp)
# Internet family options:
#
# TCP_COMPAT_42 causes the TCP code to emulate certain bugs present in
# 4.2BSD. This option should not be used unless you have a 4.2BSD
# machine and TCP connections fail.
#
# GATEWAY allows the machine to forward packets, and also configures
# larger static sizes of a number of system tables.
#
# MROUTING enables the kernel multicast packet forwarder, which works
# with mrouted(8).
#
# IPFIREWALL enables support for IP firewall construction, in
# conjunction with the `ipfw' program. IPFIREWALL_VERBOSE does
# the obvious thing.
#
# IPACCT enables IP accounting.
#
# ARP_PROXYALL enables global proxy ARP. Beware! This can burn
# your house down! See netinet/if_ether.c for the gory details.
# (Eventually there will be a better management interface.)
#
#options "TCP_COMPAT_42" #emulate 4.2BSD TCP bugs
options GATEWAY #internetwork gateway
options MROUTING # Multicast routing
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #print information about
# dropped packets
#options IPACCT #ipaccounting
#options ARP_PROXYALL #global proxy ARP
#####################################################################
# FILESYSTEM OPTIONS
# These filesystems can not be demand loaded, so they must be compiled in.
options FFS #Berkeley Fast Filesystem
options MFS #Memory based Filesystem
# These filesystems could be demand loaded, but they are often used.
options NFS #Network Filesystem
options "CD9660" #ISO 9660 Filesystem
options PROCFS #Process filesystem
#####################################################################
# MISCELLANEOUS DEVICES AND OPTIONS
pseudo-device pty 32 #Pseudo ttys - can go as high as 64
pseudo-device log #Kernel syslog interface (/dev/klog)
pseudo-device gzip #Exec gzipped a.out's
pseudo-device vn #Vnode driver (turns a file into a device)
#####################################################################
# HARDWARE DEVICE CONFIGURATION
#
# Mandatory ISA devices: isa, sc or vt, npx
#
controller isa0
#
# Options for `isa':
#
# AUTO_EOI_1 enables the `automatic EOI' feature for the master 8259A
# interrupt controller. This saves about 1.25 usec for each interrupt.
# No problems are known to be caused by this option.
#
# BOUNCE_BUFFERS provides support for ISA DMA on machines with more
# than 16 megabytes of memory. It doesn't hurt on other machines.
# Some broken EISA and VLB hardware may need this, too.
options "AUTO_EOI_1"
options BOUNCE_BUFFERS
options UCONSOLE #Allow users to grab the console
options XSERVER #Include code for XFree86
options HARDFONTS #Load ISO-8859-1 font in display adapter
options UCONSOLE #Allow users to grab the console
# Numeric Co-Processor
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
##############################################################################
## Card: #9 GXE-64
## S3 based VLB graphics card
## Note: Has 2Mb of memory on board.
##############################################################################
# syscons is the default console driver, resembling an SCO console
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
## End #9 GXE-64
options UCONSOLE #Allow users to grab the console
options XSERVER #Include code for XFree86
options HARDFONTS #Load ISO-8859-1 font in display adapter
options FAT_CURSOR #start with block cursor
##############################################################################
## Card: BusLogic BT445S
## VLB SCSI-II Controller.
## Notes: Using floppy controller on board
##############################################################################
options "SCSI_DELAY=15" #Be pessimistic about Joe SCSI device
options SCSIDEBUG #Enable SCSI debugging
options NEW_SCSICONF
# bt0: settings are irq 11 drq 5
#bt0 irq's ???
controller bt0 at isa? port "IO_BT0" bio irq ? vector btintr
controller scbus0 at bt0
# SCSI disk devices
device sd0
# SCSI disk; Quantum Maverick 540S (516 MB)
# 1057758 sectors, 2853 cyls, 4 heads, 92 sectors/track
# bios geometry: 516 cyls, 64 heads, 32 sectors/track
# slice 1: sysid 165, start 32, size 1056736 (515 Meg)
# size offset fstype [fsize bsize bps/cpg]
# a: 65536 0 4.2BSD 0 0 0 # (Cyl. 0 - 31)
# b: 131072 65536 swap # (Cyl. 32 - 95)
# c: 1056736 0 unused 0 0 # (Cyl. 0 - 515*)
# e: 860128 196608 4.2BSD 0 0 0 # (Cyl. 96 - 515*)
# sd0s1a: / ufs rw
# sd0s1b: /tmp mfs rw
# sd0s1b: none swap sw
# sd0s1e: /usr ufs rw
disk sd0 at scbus0 target 0
# SCSI disk; Quantum Lighting 730S (699 MB)
# 1431760 sectors, 3658 cyls, 4 heads, 97 sectors/track
# bios geometry: 699 cyls, 64 heads, 32 sectors/track
# slice 1: sysid 165, start 32, size 1431520 (698 Meg)
# size offset fstype [fsize bsize bps/cpg]
# b: 131072 65536 swap # (Cyl. 32 - 95)
# c: 1431520 0 unused 0 0 # (Cyl. 0 - 698*)
# e: 65536 0 4.2BSD 0 0 0 # (Cyl. 0 - 31)
# f: 307200 196608 4.2BSD 0 0 0 # (Cyl. 96 - 245)
# g: 927712 503808 4.2BSD 0 0 0 # (Cyl. 246 - 698*)
# sd1s1b: none swap sw
# sd1s1e: unused
# sd1s1f: /var ufs rw
# sd1s1g: /usr/src ufs rw
disk sd1 at scbus0 target 1
# SCSI disk; Quantum PD1225 (1169 MB)
# 2395980 sectors, 2448 cyls, 14 heads, 69 sectors/track
# bios geometry: 1169 cyls, 64 heads, 32 sectors/track
# slice 1: sysid 165, start 32, size 2394080 (1168 Meg)
# size offset fstype [fsize bsize bps/cpg]
# b: 131072 0 swap # (Cyl. 0 - 63)
# c: 2394080 0 unused 0 0 # (Cyl. 0 - 1168*)
# e: 307200 131072 4.2BSD 1024 8192 0 # (Cyl. 64 - 213)
# f: 1955808 438272 4.2BSD 1024 8192 0 # (Cyl. 214 - 1168*)
# sd2s1b: none swap sw
# sd2s1e: /amanda ufs rw
# sd2s1f: /u ufs rw
disk sd2 at scbus0 target 2
# ** NOT IN USE **
#disk sd3 at scbus0 target 3
# SCSI cdrom; Toshiba XM-3401TA
device cd0 at scbus0 target 4
# SCSI tape; Archive Viper 2525
device st0
tape st0 at scbus0 target 5
# SCSI cdrom jukebox; Mountain "CD-7" (NRC MBR-7)
device cd1 at scbus0 target 6 unit 0
device cd2 at scbus0 target 6 unit 1
device cd3 at scbus0 target 6 unit 2
device cd4 at scbus0 target 6 unit 3
device cd5 at scbus0 target 6 unit 4
device cd6 at scbus0 target 6 unit 5
device cd7 at scbus0 target 6 unit 6
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
# FLOPPY disk drive; TEAC dual 3.5/5.25
disk fd0 at fdc0 drive 0 # 1.44MB 3.5in
disk fd1 at fdc0 drive 1 # 1.2MB 5.25in
## End BusLogic BT445S
##############################################################################
## Card: Quickpath Port-Folio
##
## Note: On-board floppy and IDE controllers are disabled.
##############################################################################
# controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0x000080ff vector
wdintr
## IDE disk; Conner Peripherals CP3544 (518 MB)
## 1061424 sectors, 1053 cyls, 16 heads, 63 sectors/track
## bios geometry: 1053 cyls, 16 heads, 63 sectors/track
## slice 1: sysid 4 (Primary DOS 16 bit FAT), start 63, size 40257 (19 Meg)
## slice 2: sysid 165, start 40320, size 1021104 (498 Meg)
## size offset fstype [fsize bsize bps/cpg]
## c: 1021104 0 unused 0 0 # (Cyl. 0 - 1012)
## e: 1021104 0 4.2BSD 0 0 0 # (Cyl. 0 - 1012)
## wd0s1: msdos
## wd0s2e: /usr/local/src ufs rw
##
## Note: drive will be probed for 32bit transfers. Multi-sector transfers
## will be allowed up to the maximum supported by the drive.
##disk wd0 at wdc0 drive 0
#sio0 irq's 3,(4)
device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr
#serial mouse; fifo disabled
#sio1 irq's (3),4
device sio1 at isa? port "IO_COM2" tty flags 0x02 irq 3 vector siointr
#sio2 irq's 3,4,5,9,(10),11
device sio2 at isa? port "IO_COM3" tty irq 10 vector siointr
#modem; Supra 28.8 (v.FC)
#sio3 irq's 3,4,5,(9),12,15
device sio3 at isa? port "IO_COM4" tty irq 9 vector siointr
#lpt0 irq's 5,(7)
device lpt0 at isa? port? tty irq 7 vector lptintr
#lpt1 irq's 5,7
device lpt1 at isa? port? tty
device joy0 at isa? port "IO_GAME"
## End Quickpath Port-Folio
##############################################################################
## Card: 3Com 3C503
## 16 bit Ethernet controller.
##
##############################################################################
#ed0 irq's ???
#ed0 address 02:60:8c:dd:dc:4a
device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr
## End 3Com 3C-503
##############################################################################
## Card: Gravis UltraSound
## Sound card
## Note: Has 256Kb memory on board
##############################################################################
# If you have a GUS-MAX card and want to use the CS4231 codec on the
# card the drqs for the gus max must be 8 bit (1, 2, or 3).
#
# If you would like to use the full duplex option on the gus, then define
# flags to be the ``read dma channel''.
#
controller snd0
#gus0 irq's 2,3,5,7,11,12,(15)
#gus0/MIDI irq's 2,3,5,7,11,12,15
#device gus0 at isa? port 0x220 irq 15 drq 1 vector gusintr
device gus0 at isa? port 0x220 irq 15 drq 1 flags 0x3 vector gusintr
## End Gravis UltraSound
# IRQ's
#device 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#sio0 ( ) X
#sio1 X ( )
#sio2 ( ) . ( ) ( ) x ( )
#sio3 . ( ) ( ) x ( ) ( )
#lpt0 ( ) X
#lpt1 . ( )
#wdc0 X
#
#fdc0 X
#bt0 X
#
#gus0 ( ) ( ) ( ) ( ) ( ) ( ) x
#gus0/MIDI ( ) ( ) ( ) . ( ) x ( )
#
#sc0 X
#
#ed0 ( ) . ( ) x
# Misc notes:
# Printer Ribbons:
# Ribbon's Inc. (in TX.)
# 800/742-2661 -or- 602/241-9431
# $10.95 each
T.T.F.N.,
Dave Truesdell Wombat Wrestler/Software Packrat/NAS Newsmaster
(truesdel@nas.nasa.gov)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8125.818467675>
