From owner-freebsd-isdn Mon May 3 9:58:16 1999 Delivered-To: freebsd-isdn@freebsd.org Received: from server.amis.net (server.amis.net [212.18.32.10]) by hub.freebsd.org (Postfix) with ESMTP id 28F4F1538A for ; Mon, 3 May 1999 09:58:02 -0700 (PDT) (envelope-from blaz@gold.amis.net) Received: (from uucp@localhost) by server.amis.net (8.8.8/8.8.8) with UUCP id SAA18688 for freebsd-isdn@freebsd.org; Mon, 3 May 1999 18:58:00 +0200 (CEST) Received: by gold.amis.net (Postfix, from userid 1000) id B0B4842; Mon, 3 May 1999 18:56:32 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by gold.amis.net (Postfix) with ESMTP id A00DE1E1A for ; Mon, 3 May 1999 18:56:32 +0200 (CEST) Date: Mon, 3 May 1999 18:56:32 +0200 (CEST) From: Blaz Zupan To: freebsd-isdn@freebsd.org Subject: Crashes possibly caused by i4b Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-isdn@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Ever since I started to use 3.0-CURRENT, then 3.1 and now 4.0-CURRENT, I experience occasional crashes when I connect to the net. The machine was running just fine when I was using 2.2.8 and i4b 0.63. It was really hard to find out what was causing the problem, as no crash dump was generated and nothing was logged, the machine just plain rebooted or stopped responding. Today I was finally able to track down the possible culprit, and it seems the problem is in i4b. I'm using a callback setup. When I call my provider, he refuses the call and calls me back. Unfortunatelly the server (a Lucent Portmaster 3) seems to have a bug and sometimes calls me back _twice_. A couple of seconds after the second call arrives, the machine either reboots or stops responding. I was able to find this out by switching to the virtual console on which isdnd was running. After this halt, I was able to break into the kernel debugger, which switched me to the first console, on which I read the following: i4b-L2-i4b_i_frame_queued_up: V(S) == ((V(A) + k) & 127)! i4b-L2-i4b_i_frame_queued_up: state = ST_MULTIFR i4b-L2-i4b_print_l2var: unit0 V(R)=5, V(S)=4, V(A)=3, ACKP=0, PBSY=0, OBSY=0 i4b-L3-i4b_decode_q931: cannot find calldescriptor for cr = 0x1, crflag = 0x0, msg = 0x4d, frame = 0x4d When breaking into the debugger, I got this as well: Fatal double fault: eip = 0xc013ff74 esp = 0xc4a33000 ebp = 0xc4a33008 Doing a backtrace did not reveal anything relevat, that's why I simply typed "panic" which produced a kernel core dump that I have saved, together with a copy of the kernel. If anybody thinks he might be able to debug this with the data provided, I can put the kernel and crash dump up for FTP. Here is what I get when I start gdb on the crash dump: /var/crash> gdb --kernel kernel.7 vmcore.7 GDB is free software and you are welcome to 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. GDB 4.16 (i386-unknown-freebsd), Copyright 1996 Free Software Foundation, Inc...(no debugging symbols found)... IdlePTD 2924544 initial pcb at 2529a0 panicstr: from debugger panic messages: --- panic: double fault panic: from debugger dumping to dev 20401, offset 278528 dump 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 --- #0 0xc01583ec in boot () (kgdb) bt #0 0xc01583ec in boot () #1 0xc0158625 in panic () #2 0xc0126f75 in db_panic () #3 0xc0126f15 in db_command () #4 0xc0126fda in db_command_loop () #5 0xc012911b in db_trap () #6 0xc01d1118 in kdb_trap () #7 0xc01dc180 in trap () #8 0xc01d135b in Debugger () #9 0xc015861c in panic () #10 0xc01dc7d7 in dblfault_handler () I guess not too usefull, but then again, I really don't know much about kernel debugging :) The machine is a Pentium 200MMX, 64MB RAM, Adaptec 2940U controller, onboard sound card and 4.0-CURRENT as of yesterday. Here is my dmesg output: 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 #7: Sun May 2 15:08:49 CEST 1999 blaz@gold.amis.net:/usr/home/blaz/FreeBSD/src/sys/compile/GOLD Timecounter "i8254" frequency 1193182 Hz CPU: Pentium/P55C (232.88-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x543 Stepping=3 Features=0x8001bf real memory = 67108864 (65536K bytes) config> pnp 1 0 os enable config> pnp 1 0 port0 0x220 port1 0x530 port2 0x388 port3 0x370 config> pnp 1 0 irq0 5 drq0 1 drq1 0 config> pnp 2 0 os enable config> pnp 2 0 port0 0x280 irq0 10 avail memory = 62427136 (60964K bytes) Preloaded elf kernel "kernel" at 0xc02b8000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc02b809c. Probing for PnP devices: CSN 1 Vendor ID: YMH0030 [0x3000a865] Serial 0x80860001 Comp ID: PNPb02f [0x2fb0d041] mss_attach 1 at 0x530 irq 5 dma 1:0 flags 0x10 setting up yamaha registers set yamaha master volume to max pcm1 (CS423x/Yamaha/AD1816 sn 0x80860001) at 0x530-0x537 irq 5 drq 1 flags 0x10 on isa CSN 2 Vendor ID: CPX1501 [0x0115180e] Serial 0x48ed418e Comp ID: PNP80d6 [0xd680d041] ed1: address 00:80:48:ed:41:8e, type NE2000 (16 bit) ed1 (edpnp sn 0x48ed418e) at 0x280-0x29f irq 10 on isa npx0: on motherboard npx0: INT 16 interface apm0: on motherboard apm: found APM BIOS version 1.2 pcib0: on motherboard pci0: on pcib0 chip0: at device 0.0 on pci0 isab0: at device 7.0 on pci0 chip1: at device 7.3 on pci0 ahc0: at device 14.0 on pci0 ahc0: aic7880 Single Channel A, SCSI Id=7, 16/255 SCBs ahc0: interrupting at irq 14 isa0: on motherboard fdc0: interrupting at irq 6 fdc0: at port 0x3f0-0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> at fdc0 drive 0 atkbdc0: at port 0x60 on isa0 atkbd0: on atkbdc0 atkbd0: interrupting at irq 1 vga0: on isa0 sc0: on isa0 sc0: VGA color <16 virtual consoles, flags=0x0> sio0 at port 0x3f8-0x3ff irq 4 on isa0 sio0: type 16550A sio0: interrupting at irq 4 sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A sio1: interrupting at irq 3 isic0 at port 0xd80 irq 15 flags 0x3 on isa0 isic0: Teles S0/16.3 isic0: ISAC 2085 Version A1/A2 or 2086/2186 Version 1.1 (IOM-2) (Addr=0x960) isic0: HSCX 82525 or 21525 Version 2.1 (AddrA=0x160, AddrB=0x560) isic0: interrupting at irq 15 ppc0 at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold lpt0: on ppbus 0 lpt0: Interrupt-driven port ppc0: interrupting at irq 7 Intel Pentium detected, installing workaround for F00F bug i4b: ISDN call control device attached i4bisppp: 4 ISDN SyncPPP device(s) attached i4bctl: ISDN system control port attached i4bipr: 4 IP over raw HDLC ISDN device(s) attached i4btel: 2 ISDN telephony interface device(s) attached i4brbch: 4 raw B channel access device(s) attached i4btrc: 4 ISDN trace device(s) attached Waiting 2 seconds for SCSI devices to settle changing root device to da0s1a da1 at ahc0 bus 0 target 1 lun 0 da1: Fixed Direct Access SCSI-2 device da1: 10.000MB/s transfers (10.000MHz, offset 15) da1: 1547MB (3170160 512 byte sectors: 255H 63S/T 197C) cd0 at ahc0 bus 0 target 3 lun 0 cd0: Removable CD-ROM SCSI-2 device cd0: 10.000MB/s transfers (10.000MHz, offset 15) cd0: Attempt to query device size failed: NOT READY, Medium not present da0 at ahc0 bus 0 target 0 lun 0 da0: Fixed Direct Access SCSI-2 device da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled da0: 2063MB (4226725 512 byte sectors: 255H 63S/T 263C) WARNING: / was not properly dismounted ffs_mountfs: superblock updated for soft updates ffs_mountfs: superblock updated for soft updates ffs_mountfs: superblock updated for soft updates sio1: 1 more silo overflow (total 1) sio1: 1 more silo overflow (total 2) i4b: unit 0, assigned TEI = 96 = 0x60 Any help will be appreciated. Blaz Zupan, blaz@amis.net, http://www.herbie.amis.net Medinet d.o.o., Linhartova 21, 2000 Maribor, Slovenia To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isdn" in the body of the message