ISDN4BSD (HPS version) is going into ports
Andreas Longwitz
longwitz at incore.de
Mon Jul 16 10:48:33 UTC 2012
Hi Hans
> If you can collect the backtrace from these crashes, that would be nice.
Three examples of backtraces follow, the others are similar. I use
minidumps and ddb with the line
script kdb.enter.default=watchdog; call doadump; reset
in ddb.conf.
1. example: Default options + SPPP + RBCH, crash on kldload i4b, test PC
without isdn hardware:
kgdb /boot/kernel/kernel vmcore.3
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, ....
...
Unread portion of the kernel message buffer:
i4b: ISDN call control device attached
capi: CAPI call control device attached, v2.11
i4bisppp: 8 ISDN SyncPPP device(s) attached
i4bctl: ISDN system control port attached
i4brbch: 8 raw B channel access device(s) attached
i4btrc: 64 ISDN trace device(s) attached
Physical memory: 995 MB
Dumping 150 MB: 135 119 103 87 71 55 39 23 7
Reading symbols from /boot/kernel/firewire.ko...Reading symbols from
/boot/kernel/firewire.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/firewire.ko
Reading symbols from /boot/kernel/snd_ich.ko...Reading symbols from
/boot/kernel/snd_ich.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/snd_ich.ko
Reading symbols from /boot/kernel/sound.ko...Reading symbols from
/boot/kernel/sound.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/sound.ko
Reading symbols from /boot/kernel/dcons_crom.ko...Reading symbols from
/boot/kernel/dcons_crom.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/dcons_crom.ko
Reading symbols from /boot/kernel/acpi.ko...Reading symbols from
/boot/kernel/acpi.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/acpi.ko
Reading symbols from /boot/kernel/linux.ko...Reading symbols from
/boot/kernel/linux.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/linux.ko
Reading symbols from /usr/local/modules/fuse.ko...done.
Loaded symbols for /usr/local/modules/fuse.ko
Reading symbols from /boot/modules/i4b.ko...done.
Loaded symbols for /boot/modules/i4b.ko
#0 doadump () at pcpu.h:244
244 #endif /* !_MACHINE_PCPU_H_ */
Loading gdb init file /home/crash/.gdbinit ...
set height 100 ...
source gdb6 (and gdb6.i386) ...
source mygdb6 ...
Working directory /home/crash.
(kgdb) where
#0 doadump () at pcpu.h:244
#1 0xc04b3269 in db_fncall (dummy1=0, dummy2=0, dummy3=0,
dummy4=0xe734e890 "€è4ç")
at /usr/src/sys/ddb/db_command.c:548
#2 0xc04b369f in db_command (last_cmdp=0xc09a917c, cmd_table=0x0,
dopager=0) at /usr/src/sys/ddb/db_command.c:445
#3 0xc04b3754 in db_command_script (command=0xc09aa04a "call doadump")
at /usr/src/sys/ddb/db_command.c:516
#4 0xc04b7680 in db_script_exec (scriptname=0xc090886e
"kdb.enter.default", warnifnotfound=Variable "warnifnotfound" is not
available.) at /usr/src/sys/ddb/db_script.c:302
#5 0xc04b777b in db_script_kdbenter (eventname=0xc0946305 "unknown") at
/usr/src/sys/ddb/db_script.c:325
#6 0xc04b5708 in db_trap (type=10, code=0) at
/usr/src/sys/ddb/db_main.c:230
#7 0xc063abb8 in kdb_trap (type=10, code=0, tf=0xe734eadc) at
/usr/src/sys/kern/subr_kdb.c:654
#8 0xc08b85fe in trap (frame=0xe734eadc) at
/usr/src/sys/i386/i386/trap.c:710
#9 0xc089e96c in calltrap () at /usr/src/sys/i386/i386/exception.s:168
#10 0xc64df633 in ?? ()
Previous frame inner to this frame (corrupt stack?)i
2. example: crash on kldunload, server with isdn hardware
Relevant Information from messages:
Jul 5 08:58:44 <kern.crit> loserver kernel: pci6: <network, ISDN> at
device 1.0 (no driver attached)
Jul 9 21:20:39 <kern.crit> loserver kernel: KLD i4b.ko: depends on
netgraph - not available or version mismatch
Jul 9 21:37:44 <kern.crit> loserver kernel: bus_dmamem_alloc failed to
align memory properly.
Jul 9 21:37:44 <kern.crit> loserver kernel: ihfc0: <HFC-2BDS0 128K PCI
ISDN adapter> port 0xbc00-0xbc07 mem 0xff532000
-0xff5320ff irq 22 at device 1.0 on pci6
Jul 9 21:37:44 <kern.crit> loserver kernel: ihfc0: [ITHREAD]
Jul 9 21:37:44 <kern.crit> loserver kernel: ihfc0: Attaching I4B
controller 0.
Jul 9 21:37:44 <kern.crit> loserver kernel: ihfc0: Creating /dev/ihfc0.X.
Jul 9 21:37:44 <kern.crit> loserver kernel: capi: CAPI call control
device attached, v2.11
Jul 9 21:37:44 <kern.crit> loserver kernel: i4btel: 8 ISDN telephony
interface device(s) attached
Jul 9 21:37:44 <kern.crit> loserver kernel: i4bctl: ISDN system control
port attached
Jul 9 21:37:44 <kern.crit> loserver kernel: iloop0: I4B Loopback device
(attached)
Jul 9 21:37:44 <kern.crit> loserver kernel: i4b: Attaching I4B
controller 63.
Jul 9 21:37:44 <kern.crit> loserver kernel: i4bipr: 8 IP over raw HDLC
ISDN device(s) attached (VJ header compression)
Jul 9 21:37:44 <kern.crit> loserver kernel: i4b: ISDN call control
device attached
Jul 9 21:37:44 <kern.crit> loserver kernel: i4brbch: 8 raw B channel
access device(s) attached
Jul 9 21:37:44 <kern.crit> loserver kernel: i4btrc: 64 ISDN trace
device(s) attached
Information from vmcore by kgdb:
Unread portion of the kernel message buffer:
ihfc0: detached
pci6: <network, ISDN> at device 1.0 (no driver attached)
iloop0: I4B Loopback device (attached)
i4b: Attaching I4B controller 62.
kernel trap 12 with interrupts disabled
Fatal trap 12: page fault while in kernel mode
cpuid = 1; apic id = 01
fault virtual address = 0xcd28f26c
fault code = supervisor read, page not present
instruction pointer = 0x20:0xc0624752
stack pointer = 0x28:0xc5343c28
frame pointer = 0x28:0xc5343c8c
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = resume, IOPL = 0
current process = 11 (swi4: clock)
(kgdb) where
#0 doadump () at pcpu.h:244
#1 0xc04bc079 in db_fncall (dummy1=0, dummy2=0, dummy3=0,
dummy4=0xc5343918 ",94Å")
at /usr/src/sys/ddb/db_command.c:548
#2 0xc04bc4af in db_command (last_cmdp=0xc0988e1c, cmd_table=0x0,
dopager=0) at /usr/src/sys/ddb/db_command.c:445
#3 0xc04bc564 in db_command_script (command=0xc0989cea "call doadump")
at /usr/src/sys/ddb/db_command.c:516
#4 0xc04c0490 in db_script_exec (scriptname=0xc08ec23f
"kdb.enter.default", warnifnotfound=Variable "warnifnotfound" is not
available.) at /usr/src/sys/ddb/db_script.c:302
#5 0xc04c058b in db_script_kdbenter (eventname=0xc0927275 "unknown") at
/usr/src/sys/ddb/db_script.c:325
#6 0xc04be518 in db_trap (type=12, code=0) at
/usr/src/sys/ddb/db_main.c:230
#7 0xc0641308 in kdb_trap (type=12, code=0, tf=0xc5343be8) at
/usr/src/sys/kern/subr_kdb.c:654
#8 0xc089b17f in trap_fatal (frame=0xc5343be8, eva=3442012780) at
/usr/src/sys/i386/i386/trap.c:1000
#9 0xc089b235 in trap_pfault (frame=0xc5343be8, usermode=0,
eva=3442012780) at /usr/src/sys/i386/i386/trap.c:834
#10 0xc089bf93 in trap (frame=0xc5343be8) at
/usr/src/sys/i386/i386/trap.c:546
#11 0xc08824ec in calltrap () at /usr/src/sys/i386/i386/exception.s:168
#12 0xc0624752 in softclock (arg=0xc09a4360) at
/usr/src/sys/kern/kern_timeout.c:443
#13 0xc05e6d3b in intr_event_execute_handlers (p=0xc5544810,
ie=0xc5542680) at /usr/src/sys/kern/kern_intr.c:1219
#14 0xc05e83fb in ithread_loop (arg=0xc54f6930) at
/usr/src/sys/kern/kern_intr.c:1232
#15 0xc05e3b87 in fork_exit (callout=0xc05e8390 <ithread_loop>,
arg=0xc54f6930, frame=0xc5343d28)
at /usr/src/sys/kern/kern_fork.c:876
3. example: the same server crashes after kldunload and an ifconfig
command, after output of the linei
isp0: flags=a011<UP,POINTOPOINT,LINK1,MULTICAST> metric 0 mtu 1500
Unread portion of the kernel message buffer:
Fatal trap 12: page fault while in kernel mode
cpuid = 1; apic id = 01
fault virtual address = 0xcc387630
fault code = supervisor read, page not present
instruction pointer = 0x20:0xcc387630
stack pointer = 0x28:0xe810db20
frame pointer = 0x28:0xe810dbe8
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 = 81670 (ifconfig)
Physical memory: 2030 MB
Dumping 249 MB: 234 218 202 186 170 154 138 122 106 90 74 58 42 26 10
...
(kgdb) where
#0 doadump () at pcpu.h:244
#1 0xc04bc079 in db_fncall (dummy1=0, dummy2=0, dummy3=0,
dummy4=0xe810d810 "$Ø\020è")
at /usr/src/sys/ddb/db_command.c:548
#2 0xc04bc4af in db_command (last_cmdp=0xc0988e1c, cmd_table=0x0,
dopager=0) at /usr/src/sys/ddb/db_command.c:445
#3 0xc04bc564 in db_command_script (command=0xc0989cea "call doadump")
at /usr/src/sys/ddb/db_command.c:516
#4 0xc04c0490 in db_script_exec (scriptname=0xc08ec23f
"kdb.enter.default", warnifnotfound=Variable "warnifnotfound" is not
available.) at /usr/src/sys/ddb/db_script.c:302
#5 0xc04c058b in db_script_kdbenter (eventname=0xc0927275 "unknown") at
/usr/src/sys/ddb/db_script.c:325
#6 0xc04be518 in db_trap (type=12, code=0) at
/usr/src/sys/ddb/db_main.c:230
#7 0xc0641308 in kdb_trap (type=12, code=0, tf=0xe810dae0) at
/usr/src/sys/kern/subr_kdb.c:654
#8 0xc089b17f in trap_fatal (frame=0xe810dae0, eva=3426252336) at
/usr/src/sys/i386/i386/trap.c:1000
#9 0xc089b4ae in trap_pfault (frame=0xe810dae0, usermode=0,
eva=3426252336) at /usr/src/sys/i386/i386/trap.c:922
#10 0xc089bf93 in trap (frame=0xe810dae0) at
/usr/src/sys/i386/i386/trap.c:546
#11 0xc08824ec in calltrap () at /usr/src/sys/i386/i386/exception.s:168
#12 0xcc387630 in ?? ()
Previous frame inner to this frame (corrupt stack?)
By the way, the output of kldxref in /boot/modules is
./i4b.ko
interface ihfcpnp.1
depends on usb.1 (1,1)
depends on pci.1 (1,1)
depends on isa.1 (1,1)
module ihfcpnp_uhub
depends on kernel.803500 (803500,899999)
module ihfcpnp_pci
depends on kernel.803500 (803500,899999)
module ihfcpnp_isa
depends on kernel.803500 (803500,899999)
depends on ihfcpnp.1 (1,1)
depends on usb.1 (1,1)
module yealink_uhub
depends on kernel.803500 (803500,899999)
depends on sppp.1 (1,1)
interface i4bisppp.1
Is that what you expect ? I would expect a line
interface yealink.1
but probably I am wrong.
> I believe the SPPP functionality has not been tested for a while. I'm currently
> using I4B mostly for voice.
OK. I will try to check the sppp problem for incoming calls.
Andreas Longwitz
More information about the freebsd-isdn
mailing list