Hello,

Since 1 or 2 months, I experienced panics when I use the ath interface of our 
server (configured as hostap). Also, the system hangs often (without panic) 
during the boot process at the "Setting hostname: icarus." level. Because I had 
absolutely no time, I couldn't learn to use the kernel debugger before. 



        icarus# uname -a
        FreeBSD icarus 5.4-STABLE FreeBSD 5.4-STABLE #0: Sun Jul  3 15:14:13 
CEST 2005     [EMAIL PROTECTED]:/usr/obj/usr/src/sys/ICARUS  i386

Sources are from July, 1


        debug.mpsafenet: 1



After compiling the kernel with debug options, I get the following during the 
boot process:

        Setting hostname: icarus.
        lock order reversal
         1st 0xc2cd4c6c ath0 (network driver) @ 
/usr/src/sys/dev/ath/if_ath.c:893
         2nd 0xc30583c8 user map (user map) @ /usr/src/sys/vm/vm_map.c:2998

I suppose this explains the occasional hangups during the boot process?


The following was obtained after a panic (which occured only when I use the ath 
interface):

        icarus# kgdb kernel.debug /var/crash/vmcore.86
        [GDB will not be able to debug user-mode threads: 
/usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
        GNU gdb 6.1.1 [FreeBSD]
        Copyright 2004 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-marcel-freebsd".
        #0  doadump () at pcpu.h:160
        160             __asm __volatile("movl %%fs:0,%0" : "=r" (td));
        (kgdb) list *0xc0695dfd
        0xc0695dfd is in bus_dmamap_load_mbuf (pmap.h:201).
        196
        197             if ((pa = PTD[va >> PDRSHIFT]) & PG_PS) {
        198                     pa = (pa & ~(NBPDR - 1)) | (va & (NBPDR - 1));
        199             } else {
        200                     pa = *vtopte(va);
        201                     pa = (pa & PG_FRAME) | (va & PAGE_MASK);
        202             }
        203             return pa;
        204     }
        205
        (kgdb) backtrace
        #0  doadump () at pcpu.h:160
        #1  0xc05241dc in boot (howto=260) at 
/usr/src/sys/kern/kern_shutdown.c:410
        #2  0xc05244f1 in panic (fmt=0xc06f0b1f "%s") at 
/usr/src/sys/kern/kern_shutdown.c:566
        #3  0xc06a96ec in trap_fatal (frame=0xe5ba3b80, eva=3221110944) at 
/usr/src/sys/i386/i386/trap.c:817
        #4  0xc06a941f in trap_pfault (frame=0xe5ba3b80, usermode=0, 
eva=3221110944) at /usr/src/sys/i386/i386/trap.c:735
        #5  0xc06a9085 in trap (frame=
      {tf_fs = -440795112, tf_es = -1068433392, tf_ds = -1027473392, tf_edi = 
-1026674344, tf_esi = -1026496768, tf_ebp = -440779748, tf_isp = -440779860, 
tf_ebx = 0, tf_edx = 0, tf_ecx = -117273402, tf_eax = 1019944, tf_trapno = 12, 
tf_err = 0, tf_eip = -1066836483, tf_cs = 8, tf_eflags = 66055, tf_esp = 
-440779804, tf_ss = -1068382496}) at /usr/src/sys/i386/i386/trap.c:425
        #6  0xc069796a in calltrap () at /usr/src/sys/i386/i386/exception.s:140
        #7  0xe5ba0018 in ?? ()
        #8  0xc0510010 in exit1 (td=0xc2cba680, rv=-440779764) at 
/usr/src/sys/kern/kern_exit.c:394
        #9  0xc0494122 in ath_rxbuf_init (sc=0xc2cd4000, bf=0xc2ce3158) at 
/usr/src/sys/dev/ath/if_ath.c:1601
        #10 0xc0494560 in ath_rx_proc (arg=0xc2cd4000, npending=1) at 
/usr/src/sys/dev/ath/if_ath.c:1818
        #11 0xc0540c57 in taskqueue_run (queue=0xc2c94dc0) at 
/usr/src/sys/kern/subr_taskqueue.c:191
        #12 0xc0540cbe in taskqueue_swi_run (dummy=0x0) at 
/usr/src/sys/kern/subr_taskqueue.c:213
        #13 0xc0512ad8 in ithread_loop (arg=0xc2c28300) at 
/usr/src/sys/kern/kern_intr.c:547
        #14 0xc0511ed4 in fork_exit (callout=0xc05129b4 <ithread_loop>, 
arg=0xc2c28300, frame=0xe5ba3d38) at /usr/src/sys/kern/kern_fork.c:791
        #15 0xc06979cc in fork_trampoline () at 
/usr/src/sys/i386/i386/exception.s:209
        (kgdb) 



My kernel config:

        machine         i386
        cpu                     I686_CPU
        ident           ICARUS
        
        # 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         KDB                     # Enable kernel debugger 
support.
        options         GDB                     # Support remote GDB.
        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
        
        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         CD9660                  # ISO 9660 Filesystem
        options         PROCFS                  # Process filesystem (requires 
PSEUDOFS)
        options         PSEUDOFS                # Pseudo-filesystem framework
        options         GEOM_GPT                # GUID Partition Tables.
        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.
        options         ADAPTIVE_GIANT          # Giant mutex is adaptive.
        
        device          apic            # I/O APIC
        
        # Bus support.  Do not remove isa, even if you have no isa slots
        device          isa
        device          pci
        
        # Floppy drives
        device          fdc
        
        # ATA and ATAPI devices
        device          ata
        device          atadisk         # ATA disk drives
        device          ataraid         # ATA RAID drives
        device          atapicd         # ATAPI CDROM drives
        device          atapifd         # ATAPI floppy drives
        device          atapist         # ATAPI tape drives
        options         ATA_STATIC_ID   # Static device numbering
        
        # SCSI peripherals
        device          scbus           # SCSI bus (required for SCSI)
        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)
        
        # SCSI controller
        device          sym
        
        # 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
        device          green_saver
        
        # syscons is the default console driver, resembling an SCO console
        device          sc
        
        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
        
        # 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 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          fxp             # Intel EtherExpress PRO/100B (82557, 
82558)
        device          rl              # RealTek 8129/8139
        
        # 'device ed' requires 'device miibus'
        device          ed              # NE[12]000, SMC Ultra, 3c503, DS8390 
cards
        
        # Wireless NIC cards
        device          wlan            # 802.11 support
        device          ath
        device          ath_hal         # Atheros HAL (includes binary 
component)
        
        # Pseudo devices.
        device          loop            # Network loopback
        device          mem             # Memory and kernel memory devices
        device          io              # I/O device
        device          random          # Entropy device
        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
        
        # PF
        device          pf                      #PF OpenBSD packet-filter 
firewall
        device          pflog                   #logging support interface for 
PF
        device          pfsync                  #synchronization interface for 
PF
        options         ALTQ
        options         ALTQ_PRIQ       # Priority Queueing
        options         ALTQ_NOPCC      # Required for SMP build
        
        # PPPoE DSL
        options         NETGRAPH
        options         NETGRAPH_SOCKET
        options         NETGRAPH_PPPOE
        options         NETGRAPH_ETHER
        
        # SMP
        options         SMP                     # Symmetric MultiProcessor 
Kernel
        options         MPTABLE_FORCE_HTT       # Enable HTT CPUs with the MP 
Table
        options         PREEMPTION
        
        options         CPU_ENABLE_TCC
        options         CPU_FASTER_5X86_FPU
        options         CPU_SUSP_HLT
        
        # Save kernel config in binary's
        options         INCLUDE_CONFIG_FILE
        
        # Disks
        options         QUOTA                   #enable disk quotas
        
        # Posix 1003.1b
        options         P1003_1B_SEMAPHORES
        
        # Sound
        # device                sound
        # device                snd_ich
        # device                speaker         #Play IBM BASIC-style noises 
out your speaker
        
        # SMBus
        device          smbus           # Bus support, required for smb below.
        device          ichsmb
        device          smb
        
        # Reboot after panic
        options         PANIC_REBOOT_WAIT_TIME=60
        
        # Emulation
        options         COMPAT_LINUX
        options         COMPAT_AOUT
        options         LINPROCFS
        
        # Filesystems
        options         NULLFS                  #NULL filesystem



Another important detail could be that I use a dual Xeon box, which HT enabled, 
which results in 4 logical CPU's and explain why anybody reported this problem 
before?!

I hope somebody could help, if you need additional informations, let me know.
Thank you.

-- 
Best regards, 
 Cédric Jonas
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to