Date: Fri, 27 Aug 1999 12:33:45 +0200 (MEST) From: Michael Class <michaelc@tmbbwmc.bbn.hp.com> To: current@freebsd.org Subject: current-APM causes panic on SMP-System Message-ID: <Pine.BSF.4.10.9908271232300.40664-300000@pc-micha.mc.hp.com>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
Hello,
since the apm-code was changed to use the generic bios-call interface
(dated around 1999/07/28) my FreeBSD-4.0-current system panics when I do
an "apmconf -e". This has not changed since then. I reproduced it with
a very current System (1999/08/25) today.
The system is a Dual-Proc GigaByte 6BXDS-MB with 2x350Mhz PII and 256MB-RAM.
For further information I have added the Config-File and dmesg-output.
When calling apmconf -e i am getting the following panic:
(written down by hand, so there might be some typos)
-----------------------------------------------------------------------
Fatal trap 12: page fault while in kernel mode
mp_lock=01000002; cpuid=1; lapic.id=01000000
fault virtual address = 0x8380
fault code = supervisor read, page not present
ip = 0x50:0x8380
stack = 0x10:0xff80df24
frame = 0x10:0xc02bde80
code = base 0xc00f0000, limit 0xffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 0
proc flags = intr enabled, resume, iopl=0
current proc = idle
interrupt mask = <-- SMP: XXX
-----------------------------------------------------------------------
The Adress 0x8380 seems to be the one from the APM-BIOS-Call.
What can I do to track this further down?
Michael
-------------------------------------------------------------------------
michael class, viktor-renner str. 39, 72074 tuebingen, frg
E-Mail: michael_class@gmx.net
Phone: +49 7031 14-3707 (work) +49 7071 81950 (private)
-------------------------------------------------------------------------
[-- Attachment #2 --]
#
# SMP-GENERIC -- Smp machine with WD/AHx/NCR/BTx family disks
#
# For more information read the handbook part System Administration ->
# Configuring the FreeBSD Kernel -> The Configuration File.
# The handbook is available in /usr/share/doc/handbook or online as
# latest version from the FreeBSD World Wide Web server
# <URL:http://www.FreeBSD.ORG/>
#
# An exhaustive list of options and more detailed explanations of the
# device lines is present in the ./LINT configuration file. If you are
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
# $Id: SMP-GENERIC,v 1.20 1998/10/22 13:49:51 bde Exp $
machine i386
cpu I686_CPU
ident MCSMP
maxusers 64
#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
# Create a SMP capable kernel (mandatory options):
options SMP # Symmetric MultiProcessor Kernel
options APIC_IO # Symmetric (APIC) I/O
# Optional, these are the defaults:
#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
# Lets always enable the kernel debugger for SMP.
options DDB
# SMP shouldn't need x87 emulation, disable by default.
#options MATH_EMULATE #Support for x87 emulation
options INET #InterNETworking
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
options MFS #Memory Filesystem
options MFS_ROOT #MFS usable as root device, "MFS" req'ed
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device, "NFS" req'ed
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root. "CD9660" req'ed
options PROCFS #Process filesystem
options KERNFS
options COMPAT_LINUX
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options SCSI_DELAY=10000 #Be pessimistic about Joe SCSI device
options UCONSOLE #Allow users to grab the console
#options FAILSAFE #Be conservative
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
# Enable the following (IPFIREWALL_VERBOSE optional) to enable the IP firewall
# code. This is used in conjunction with the ipfw(1) command. See the
# man page for more details.
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #print information about
# dropped packets
options IPFIREWALL_FORWARD #enable xparent proxy support
#options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity
options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options IPDIVERT #divert sockets
#options IPFILTER #kernel ipfilter support
#options IPFILTER_LOG #ipfilter logging
#options IPFILTER_LKM #kernel support for ip_fil.o LKM
#options TCPDEBUG
# ICMP_BANDLIM enables icmp error response bandwidth limiting. You
# typically want this option as it will help protect the machine from
# D.O.S. packet attacks.
#
options ICMP_BANDLIM
# DUMMYNET enables the "dummynet" bandwidth limiter. You need
# IPFIREWALL as well. See the dummynet(4) manpage for more info.
# BRIDGE enables bridging between ethernet cards -- see bridge(4).
# You can use IPFIREWALL and dummynet together with bridging.
#options DUMMYNET
#options BRIDGE
# Allow the FFS to use Softupdates technology.
# To do this you need to fetch the two files
# /sys/ufs/ffs/softdep.h and /sys/ufs/ffs/ffs_softdep.c
# from freebsd.org and understand the licensing restrictions.
options SOFTUPDATES
#####################################################################
# POSIX P1003.1B
# Real time extensions added int the 1993 Posix
# P1003_1B: Infrastructure
# _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
# _KPOSIX_VERSION: Version kernel is built for
options P1003_1B
options _KPOSIX_PRIORITY_SCHEDULING
options _KPOSIX_VERSION=199309L
#####################################################################
controller isa0 at nexus?
controller pci0 at nexus?
#controller pnp0
controller fdc0 at isa? port "IO_FD1" irq 6 drq 2
disk fd0 at fdc0 drive 0
#disk fd1 at fdc0 drive 1
#
# ATA and ATAPI devices
# This is work in progress, use at your own risk.
# It currently reuses the majors of wd.c and freinds.
# It cannot co-exist with the old system in one kernel.
# You only need one "controller ata0" for it to find all
# PCI devices on modern machines.
#controller ata0
#device atadisk0 # ATA disk drives
#device atapicd0 # ATAPI CDROM drives
#device atapist0 # ATAPI tape drives
#device atapifd0 # ATAPI floppy drives
# these are the old wd-drivers:
#controller wdc0 at isa? port "IO_WD1" irq 14
#disk wd0 at wdc0 drive 0
#disk wd1 at wdc0 drive 1
#controller wdc1 at isa? port "IO_WD2" irq 15
#disk wd2 at wdc1 drive 0
#disk wd3 at wdc1 drive 1
#options ATAPI #Enable ATAPI support for IDE bus
#options ATAPI_STATIC #Don't do it as an LKM
#device acd0 #IDE CD-ROM
#device wfd0 #IDE Floppy (e.g. LS-120)
##############################################################
device bktr0
# options OVERRIDE_CARD=xxx
# options OVERRIDE_TUNER=xxx
# options OVERRIDE_MSP=1
# options OVERRIDE_DBX=1
# These options can be used to override the auto detection
# The current values for xxx are found in /usr/src/sys/pci/brooktree848.c
# Using sysctl(8) run-time overrides on a per-card basis can be made
#
options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL
# or
# options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_NTSC
# Specifes the default video capture mode.
# This is required for Dual Crystal (28&35Mhz) boards where PAL is used
# to prevent hangs during initialisation. eg VideoLogic Captivator PCI.
#
options BKTR_USE_PLL
# PAL or SECAM users who have a 28Mhz crystal (and no 35Mhz crystal)
# must enable PLL mode with this option. eg some new Bt878 cards.
# A single entry for any of these controllers (ncr, ahb, ahc, amd) is
# sufficient for any number of installed devices.
controller ahc0
controller ahc1
controller scbus0 at ahc0
controller scbus1 at ahc1
device da0 #at scbus1 target 0
device da1 #at scbus1 target 1
device sa0 #at scbus0 target 4
device cd0 at scbus0 target 3
device cd1 at scbus0 target 5
device pass0 at scbus0 target 2 # scanner
device pass1 at scbus0 target 3 # cd-rw
device pass2 at scbus0 target 5 # cd
options SCSI_REPORT_GEOMETRY
# syscons is the default console driver, resembling an SCO console
controller atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x01
device psm0 at atkbdc? irq 12
device vga0 at isa? port ? conflicts
device sc0 at isa?
# splash screen/screen saver
pseudo-device splash
device npx0 at nexus? port IO_NPX irq 13
#
# Laptop support (see LINT for more options)
#
device apm0 at nexus? # Advanced Power Management
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
#device sio2 at isa? port IO_COM3 irq 9
device ppc0 at isa? port ? irq 7
controller ppbus0
device lpt0 at ppbus?
device xl0
#device ed0 at isa? port 0x280 net irq 10 iomem 0xd8000
# Controls all sound devices
device pcm0
pseudo-device loop
pseudo-device ether
pseudo-device tun
pseudo-device pty
pseudo-device gzip # Exec gzipped a.out's
pseudo-device speaker
pseudo-device vn #Vnode driver (turns a file into a device)
pseudo-device streams #SVR4 support
# KTRACE enables the system-call tracing facility ktrace(2).
# This adds 4 KB bloat to your kernel, and slightly increases
# the costs of each syscall.
#options KTRACE #kernel tracing
# This provides support for System V shared memory.
#
options SYSVSHM
options SYSVSEM
options SYSVMSG
#options SHMMAXPGS=8192 # more shared-memory for samba and postgresql
options SHMMAXPGS=10000
options SHMMNI=100
options SHMSEG=10
options SEMMNS=200
options SEMMNI=70
options SEMMSL=61
# The `bpf' 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.
pseudo-device bpf #Berkeley packet filter
# USB support
#controller uhci0
#controller ohci0
#controller usb0
#
# for the moment we have to specify the priorities of the device
# drivers explicitly by the ordering in the list below. This will
# be changed in the future.
#
#device ums0
#device ukbd0
#device ulpt0
#device uhub0
#device ucom0
#device umodem0
#device hid0
#device ugen0
#
#options USB_DEBUG
#options USBVERBOSE
#
# SMB bus
#
# System Management Bus support provided by the 'smbus' device.
#
# Supported devices:
# smb standard io
#
# Supported interfaces:
# iicsmb I2C to SMB bridge with any iicbus interface
# bktr brooktree848 I2C hardware interface
# intpm Intel PIIX4 Power Management Unit
#
controller smbus0
controller iicbus0
controller iicbb0
controller intpm0
device smb0 at smbus?
[-- Attachment #3 --]
Copyright (c) 1992-1999 The FreeBSD Project.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
FreeBSD 4.0-CURRENT #0: Wed Aug 25 19:10:12 MEST 1999
michaelc@pc-micha.mc.hp.com:/usr/src/sys/compile/MCSMP
Timecounter "i8254" frequency 1193182 Hz
CPU: Pentium II/Xeon/Celeron (686-class CPU)
Origin = "GenuineIntel" Id = 0x652 Stepping = 2
Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
real memory = 268369920 (262080K bytes)
avail memory = 257110016 (251084K bytes)
Programming 24 pins in IOAPIC #0
FreeBSD/SMP: Multiprocessor motherboard
cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000
cpu1 (AP): apic id: 1, version: 0x00040011, at 0xfee00000
io0 (APIC): apic id: 2, version: 0x00170011, at 0xfec00000
Preloaded elf kernel "kernel" at 0xc031b000.
Pentium Pro MTRR support enabled
npx0: <math processor> on motherboard
npx0: INT 16 interface
apm0: <APM BIOS> on motherboard
apm: APM BIOS version 0102
apm: Code16 0xc00f0000, Data 0xc00fdf80
apm: Code entry 0x00008380, Idling CPU enabled, Management enabled
apm: CS_limit=0xffff, DS_limit=0xffff
apm: Engaged control enabled
apm: found APM BIOS v1.2, connected at v1.2
apm: Slow Idling CPU enabled
Add hook "default suspend"
Add hook "default resume"
pcib0: <Intel 82443BX (440 BX) host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
WARNING: "bktr" is usurping "bktr"'s cdevsw[]
pcib1: <Intel 82443BX (440 BX) PCI-PCI (AGP) bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
chip1: <Intel PIIX4 IDE controller> at device 7.1 on pci0
chip2: <UHCI USB controller> irq 15 at device 7.2 on pci0
intpm0: <Intel 82371AB Power management controller> at device 7.3 on pci0
intpm0: I/O mapped 5000
intpm0: intr IRQ 9 enabled revision 0
smbus0: <System Management Bus> on intsmb0
smb0: <SMBus general purpose I/O> on smbus0
intpm0: PM I/O mapped 4000
vga-pci0: <Matrox MGA 2164W graphics accelerator> irq 16 at device 8.0 on pci0
bktr0: <BrookTree 878> irq 17 at device 9.0 on pci0
iicbb0: <I2C generic bit-banging driver> on bti2c0
iicbus0: <Philips I2C bus> on iicbb0 master-only
smbus1: <System Management Bus> on bti2c0
smb1: <SMBus general purpose I/O> on smbus1
Hauppauge Model 61344 D121
Hauppauge WinCast/TV, Philips FR1216 PAL tuner, msp3400c stereo, remote control.
Detected a MSP3410D-B4
pci0: unknown card DD^0878 (vendor=0x109e, dev=0x0878) at 9.1 irq 17
xl0: <3Com 3c905B-TX Fast Etherlink XL> irq 18 at device 10.0 on pci0
xl0: Ethernet address: 00:10:5a:d7:dd:9c
xl0: autoneg complete, link status good (half-duplex, 100Mbps)
pcm0: <AudioPCI ES1370> irq 19 at device 11.0 on pci0
pcm0: using I/O space register mapping at 0xd800
Add hook "pcm resume handler"
Add hook "pcm suspend handler"
ahc0: <Adaptec aic7895 Ultra SCSI adapter> irq 16 at device 12.0 on pci0
ahc0: aic7895 Wide Channel A, SCSI Id=7, 16/255 SCBs
ahc1: <Adaptec aic7895 Ultra SCSI adapter> irq 16 at device 12.1 on pci0
ahc1: Using left over BIOS settings
ahc1: aic7895 Wide Channel B, SCSI Id=7, 16/255 SCBs
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <keyboard controller (i8042)> at port 0x60-0x6f on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3b0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> on isa0
sc0: VGA <16 virtual consoles, flags=0x200>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0 at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
lpt0: <generic printer> on ppbus 0
lpt0: Interrupt-driven port
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: routing 8254 via pin 2
IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to accept, unlimited logging
Waiting 10 seconds for SCSI devices to settle
SMP: AP CPU #1 Launched!
changing root device to da0s2a
da1 at ahc1 bus 0 target 1 lun 0
da1: <Quantum XP34300W L915> Fixed Direct Access SCSI-2 device
da1: 20.000MB/s transfers (10.000MHz, offset 8, 16bit), Tagged Queueing Enabled
da1: 4101MB (8399520 512 byte sectors: 64H 32S/T 4101C)
da0 at ahc1 bus 0 target 0 lun 0
da0: <MICROP 3391WS X502> Fixed Direct Access SCSI-2 device
da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled
da0: 8681MB (17780058 512 byte sectors: 64H 32S/T 8681C)
cd1 at ahc0 bus 0 target 5 lun 0
cd1: <TOSHIBA CD-ROM XM-3701TA 3615> Removable CD-ROM SCSI-2 device
cd1: 4.901MB/s transfers (4.901MHz, offset 15)
cd1: Attempt to query device size failed: NOT READY, Medium not present
cd0 at ahc0 bus 0 target 3 lun 0
cd0: <YAMAHA CRW4416S 1.0e> Removable CD-ROM SCSI-2 device
cd0: 8.333MB/s transfers (8.333MHz, offset 15)
cd0: cd present [177080 x 2048 byte records]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.10.9908271232300.40664-300000>
