kern/58930: Page fault when unplugging Alcatel Speedtouch 330

Mark Dixon mark at markdnet.demon.co.uk
Tue Nov 4 08:40:13 PST 2003


>Number:         58930
>Category:       kern
>Synopsis:       Page fault when unplugging Alcatel Speedtouch 330
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Nov 04 08:40:08 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Mark Dixon
>Release:        FreeBSD 5.1-CURRENT i386
>Organization:
>Environment:


System: FreeBSD lizacnet.demon.co.uk 5.1-CURRENT FreeBSD 5.1-CURRENT #2: Mon Nov  3 13:10:09 GMT 2003     mark at lizacnet.demon.co.uk:/usr/obj/usr/src/sys/MARKSDEBUG i386  

Kernel: 

machine         i386
cpu             I486_CPU
cpu             I586_CPU
cpu             I686_CPU
ident           GENERIC

#To statically compile in device wiring instead of /boot/device.hints
#hints          "GENERIC.hints"         #Default places to look for devices.

makeoptions     DEBUG=-g                #Build kernel with gdb(1) debug symbols

options         SCHED_4BSD              #4BSD scheduler
options         INET                    #InterNETworking
options         INET6                   #IPv6 communications protocols
options         FFS                     #Berkeley Fast Filesystem
options         SOFTUPDATES             #Enable FFS soft updates support
options         UFS_ACL                 #Support for access control lists
options         UFS_DIRHASH             #Improve performance on big directories
options         MD_ROOT                 #MD is a potential root device
options         NFSCLIENT               #Network Filesystem Client
options         NFSSERVER               #Network Filesystem Server
options         NFS_ROOT                #NFS usable as root device, requires NFSCLIENT
options         MSDOSFS                 #MSDOS Filesystem
options         CD9660                  #ISO 9660 Filesystem
options         PROCFS                  #Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                #Pseudo-filesystem framework
options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
options         COMPAT_FREEBSD4         #Compatible with FreeBSD4
options         SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
options         KTRACE                  #ktrace(1) support
options         SYSVSHM                 #SYSV-style shared memory
options         SYSVMSG                 #SYSV-style message queues
options         SYSVSEM                 #SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
                                        # output.  Adds ~128k to driver.
options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug
                                        # output.  Adds ~215k to driver.

# Debugging for use in -current
#options        DDB                     #Enable the kernel debugger
options         INVARIANTS              #Enable calls of extra sanity checking
options         INVARIANT_SUPPORT       #Extra sanity checks of internal structures, required by INVARIANTS
options         WITNESS                 #Enable checks to detect deadlocks and cycles
options         WITNESS_SKIPSPIN        #Don't run witness on spinlocks for speed

# To make an SMP kernel, the next two are needed
#options        SMP                     # Symmetric MultiProcessor Kernel
#options        APIC_IO                 # Symmetric (APIC) I/O

device          isa
device          eisa
device          pci

# Floppy drives
device          fdc

# ATA and ATAPI devices
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

# SCSI Controllers
#device         ahb             # EISA AHA1742 family
device          ahc             # AHA2940 and onboard AIC7xxx devices
device          ahd             # AHA39320/29320 and onboard AIC79xx devices
#device         amd             # AMD 53C974 (Tekram DC-390(T))
#device         isp             # Qlogic family
#device         mpt             # LSI-Logic MPT-Fusion
#device         ncr             # NCR/Symbios Logic
#device         sym             # NCR/Symbios Logic (newer chipsets + those of `ncr')
#device         trm             # Tekram DC395U/UW/F DC315U adapters

#device         adv             # Advansys SCSI adapters
#device         adw             # Advansys wide SCSI adapters
#device         aha             # Adaptec 154x SCSI adapters
#device         aic             # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
#device         bt              # Buslogic/Mylex MultiMaster SCSI adapters

#device         ncv             # NCR 53C500
#device         nsp             # Workbit Ninja SCSI-3
#device         stg             # TMC 18C30/18C50

# RAID controllers interfaced to the SCSI subsystem
#device         asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
#device         ciss            # Compaq Smart RAID 5*
#device         dpt             # DPT Smartcache III, IV - See NOTES for options!
#device         iir             # Intel Integrated RAID
#device         mly             # Mylex AcceleRAID/eXtremeRAID

# SCSI peripherals
device          scbus           # SCSI bus (required)
device          ch              # SCSI media changers
device          da              # Direct Access (disks)
device          sa              # Sequential Access (tape etc)
device          cd              # CD
device          pass            # Passthrough device (direct SCSI access)
device          ses             # SCSI Environmental Services (and SAF-TE)

# RAID controllers
#device         aac             # Adaptec FSA RAID
#device         aacp            # SCSI passthrough for aac (requires CAM)
#device         amr             # AMI MegaRAID
#device         ida             # Compaq Smart RAID
#device         ips             # IBM (Adaptec) ServeRAID
#device         mlx             # Mylex DAC960 family
#device         pst             # Promise Supertrak SX6000
#device         twe             # 3ware ATA RAID

# atkbdc0 controls both the keyboard and the PS/2 mouse
device          atkbdc          # AT keyboard controller
device          atkbd           # AT keyboard
device          psm             # PS/2 mouse

device          vga             # VGA video card driver

device          splash          # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device          sc

# Enable this for the pcvt (VT220 compatible) console driver
#device         vt
#options        XSERVER                 # support for X server on a vt console
#options        FAT_CURSOR              # start with block cursor

device          agp             # support several AGP chipsets

# Floating point support - do not disable.
device          npx

# Power management support (see NOTES for more options)
#device         apm
# Add suspend/resume support for the i8254.
device          pmtimer

# PCCARD (PCMCIA) support
# Pcmcia and cardbus bridge support
#device         cbb                     # cardbus (yenta) bridge
#device         pcic                    # ExCA ISA and PCI bridges
#device         pccard                  # PC Card (16-bit) bus
#device         cardbus                 # CardBus (32-bit) bus

# Serial (COM) ports
device          sio             # 8250, 16[45]50 based serial ports

# Parallel port
device          ppc
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.
#device         de              # DEC/Intel DC21x4x (``Tulip'')
#device         em              # Intel PRO/1000 adapter Gigabit Ethernet Card
#device         txp             # 3Com 3cR990 (``Typhoon'')
#device         vx              # 3Com 3c590, 3c595 (``Vortex'')

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device          miibus          # MII bus support
device          dc              # DEC/Intel 21143 and various workalikes
device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
device          pcn             # AMD Am79C97x PCI 10/100 (precedence over 'lnc')
device          rl              # RealTek 8129/8139
device          sf              # Adaptec AIC-6915 (``Starfire'')
device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
device          sk              # SysKonnect SK-984x and SK-982x gigabit ethernet
device          ste             # Sundance ST201 (D-Link DFE-550TX)
device          ti              # Alteon Networks Tigon I/II gigabit ethernet
device          tl              # Texas Instruments ThunderLAN
device          tx              # SMC EtherPower II (83c170 ``EPIC'')
device          vr              # VIA Rhine, Rhine II
device          wb              # Winbond W89C840F
device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
device          bge             # Broadcom BCM570xx Gigabit Ethernet

# ISA Ethernet NICs.  pccard nics included.
device          cs              # Crystal Semiconductor CS89x0 NIC
# 'device ed' requires 'device miibus'
device          ed              # NE[12]000, SMC Ultra, 3c503, DS8390 cards
device          ex              # Intel EtherExpress Pro/10 and Pro/10+
device          ep              # Etherlink III based cards
device          fe              # Fujitsu MB8696x based cards
device          ie              # EtherExpress 8/16, 3C507, StarLAN 10 etc.
device          lnc             # NE2100, NE32-VL Lance Ethernet cards
device          sn              # SMC's 9000 series of ethernet chips
device          xe              # Xircom pccard ethernet

# ISA devices that use the old ISA shims
#device         le

# Wireless NIC cards
device          wlan            # 802.11 support
device          an              # Aironet 4500/4800 802.11 wireless NICs.
device          awi             # BayStack 660 and others
device          wi              # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device         wl              # Older non 802.11 Wavelan wireless NIC.

# Pseudo devices - the number indicates how many units to allocate.
device          random          # Entropy device
device          loop            # Network loopback
device          ether           # Ethernet support
device          sl              # Kernel SLIP
device          ppp             # Kernel PPP
device          tun             # Packet tunnel.
device          pty             # Pseudo-ttys (telnet etc)
device          md              # Memory "disks"
device          gif             # IPv6 and IPv4 tunneling
device          faith           # IPv6-to-IPv4 relaying (translation)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device          bpf             # Berkeley packet filter

# USB support
device          uhci            # UHCI PCI->USB interface
device          ohci            # OHCI PCI->USB interface
device          usb             # USB Bus (required)
#device         udbp            # USB Double Bulk Pipe devices
device          ugen            # Generic
device          uhid            # "Human Interface Devices"
device          ukbd            # Keyboard
device          ulpt            # Printer
device          umass           # Disks/Mass storage - Requires scbus and da
device          ums             # Mouse
device          urio            # Diamond Rio 500 MP3 player
device          uscanner        # Scanners
# USB Ethernet, requires mii
device          aue             # ADMtek USB ethernet
device          axe             # ASIX Electronics USB ethernet
device          cue             # CATC USB ethernet
device          kue             # Kawasaki LSI USB ethernet

# FireWire support
#device         firewire        # FireWire bus code
#device         sbp             # SCSI over FireWire (Requires scbus and da)
#device         fwe             # Ethernet over FireWire (non-standard!)

# atapicam for CD burnin'
device          atapicam
options         IPDIVERT

# TV Tuner
device          bktr



>Description:


If my alcatel speedtouch is disconnected from the PC having had its firmware loaded, the system panics with a page fault. The firmware laoder program is from the net/pppoa port, and is called modem_run.exe. This used to work fine on 5.1-RELEASE.

I have the dump file available, if required.

gdb -k on the dump:

GNU gdb 5.2.1 (FreeBSD)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-undermydesk-freebsd"...
(no debugging symbols found)...

panic: page fault
panic messages:
---
Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0xc3a762a0
fault code              = supervisor write, page not present
instruction pointer     = 0x8:0xc0511742
stack pointer           = 0x10:0xd8bb5b24
frame pointer           = 0x10:0xd8bb5b44
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         = 650 (modem_run)
trap number             = 12
panic: page fault

syncing disks, buffers remaining... 1592 1592 1591 1591 1591 1591 1592 1591 1594 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591 1591
giving up on 691 buffers
Uptime: 5m38s
Dumping 383 MB
 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368
---
Reading symbols from /boot/kernel/snd_pcm.ko...(no debugging symbols found)...
done.
Loaded symbols for /boot/kernel/snd_pcm.ko
Reading symbols from /boot/kernel/snd_emu10k1.ko...
(no debugging symbols found)...done.
Loaded symbols for /boot/kernel/snd_emu10k1.ko
Reading symbols from /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/FreeBSD 5.1-CURRENT i386  modules/linux/linux.ko.debug...done.
Loaded symbols for /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/linux/linux.ko.debug
Reading symbols from /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/acpi/acpi.ko.debug...done.
Loaded symbols for /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/acpi/acpi.ko.debug
Reading symbols from /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/ntfs/ntfs.ko.debug...done.
Loaded symbols for /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/ntfs/ntfs.ko.debug
Reading symbols from /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/linprocfs/linprocfs.ko.debug...done.
Loaded symbols for /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/linprocfs/linprocfs.ko.debug
Reading symbols from /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/ipfw/ipfw.ko.debug...done.
Loaded symbols for /usr/obj/usr/src/sys/MARKSDEBUG/modules/usr/src/sys/modules/ipfw/ipfw.ko.debug
---Type <return> to continue, or q <return> to quit---
#0  0xc057909b in doadump ()
(kgdb) where
#0  0xc057909b in doadump ()
#1  0xc05796b9 in boot ()
#2  0xc05799e7 in panic ()
#3  0xc070044e in trap_fatal ()
#4  0xc0700161 in trap_pfault ()
#5  0xc06ffd60 in trap ()
#6  0xc06f11c8 in calltrap ()
#7  0xc0541488 in spec_close ()
#8  0xc0540198 in spec_vnoperate ()
#9  0xc05dabd6 in vn_close ()
#10 0xc05dba20 in vn_closefile ()
#11 0xc055dc49 in fdrop_locked ()
#12 0xc055ccfe in fdrop ()
#13 0xc055ccac in closef ()
#14 0xc055afa8 in close ()
#15 0xc0700752 in syscall ()
#16 0xc06f121d in Xint0x80_syscall ()
---Can't read userspace from dump, or kernel process---

(kgdb)


>How-To-Repeat:


Run modem_run to upload the modem firmware (e.g modem_run -f /usr/local/libdata/mgmt.o), wait for it  to complete (it becomes a background process after uploading the firmware). Then unplug the modem.


>Fix:


Unknown


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list