[App_rpt-users] pciradio Dahdi Issues (kernel Oops)

Bryan Fields Bryan at bryanfields.net
Tue Jan 27 21:04:57 UTC 2015


I've built a new low power (atom) server and as it needs to be on a newer
kernel it means using dahdi plus the Duuude's patches from svn.   I'm planing
to do a write up on how to build this once I get it working.

> ryan at Itchy:~/trunk/dahdi-linux-complete-2.10.0.1+2.10.0.1$ patch -p1 < ../fixed-dahdi-patches/patch-dahdi-dude-fixed.2
> patching file linux/drivers/dahdi/dahdi-base.c
> Hunk #1 succeeded at 1112 with fuzz 1 (offset 130 lines).
> Hunk #2 succeeded at 1848 with fuzz 2 (offset 490 lines).
> Hunk #3 FAILED at 1385.  / manually applied it, offset it a few hundred lines.
> Hunk #4 succeeded at 3196 with fuzz 1 (offset 197 lines).
> Hunk #5 succeeded at 7952 (offset 871 lines).
> Hunk #6 succeeded at 7988 (offset 871 lines).
> Hunk #7 succeeded at 8916 (offset 874 lines).
> Hunk #8 succeeded at 9091 (offset 874 lines).
> Hunk #9 succeeded at 9186 (offset 874 lines).
> 1 out of 9 hunks FAILED -- saving rejects to file linux/drivers/dahdi/dahdi-base.c.rej

Hunk 3 was very easy and I patched it by hand.  Just too far off for patch to
deal with.  I've also tried it with out the patches and it still Oops when I
load pciradio.

My problem is upon loading pciradio there is a kernel oops.  I've tried to
debug this, but I'm not great with x86 asm :)

This is a stock install of Debian 7.8, Kernel 3.2
root at Itchy:/# uname -a
Linux Itchy 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux

Based on the IP it looks like it's some thing in vsnprintf, but that's most
likely being called with some bad data or something.

Decoding it shows this, but again kernel programer (or really any kind of
programmer)
> Code: 02 00 00 40 0f b6 ce ff 24 cd 18 81 42 81 4c 39 e5 73 1a 4c 89 e1 48 63 f0 48 89 ef 48 29 e9 48 39 ce 48 89 d6 0f 4e c8 48 63 c9 <f3> a4 4c 01 c5 e9 28 03 00 00 8b 13 83 fa 30 73 0d 89 d0 83 c2
> All code
> ========
>    0:   02 00                   add    (%rax),%al
>    2:   00 40 0f                add    %al,0xf(%rax)
>    5:   b6 ce                   mov    $0xce,%dh
>    7:   ff 24 cd 18 81 42 81    jmpq   *-0x7ebd7ee8(,%rcx,8)
>    e:   4c 39 e5                cmp    %r12,%rbp
>   11:   73 1a                   jae    0x2d
>   13:   4c 89 e1                mov    %r12,%rcx
>   16:   48 63 f0                movslq %eax,%rsi
>   19:   48 89 ef                mov    %rbp,%rdi
>   1c:   48 29 e9                sub    %rbp,%rcx
>   1f:   48 39 ce                cmp    %rcx,%rsi
>   22:   48 89 d6                mov    %rdx,%rsi
>   25:   0f 4e c8                cmovle %eax,%ecx
>   28:   48 63 c9                movslq %ecx,%rcx
>   2b:*  f3 a4                   rep movsb %ds     <-- trapping instruction:(%rsi),%es:(%rdi)
>   2d:   4c 01 c5                add    %r8,%rbp
>   30:   e9 28 03 00 00          jmpq   0x35d
>   35:   8b 13                   mov    (%rbx),%edx
>   37:   83 fa 30                cmp    $0x30,%edx
>   3a:   73 0d                   jae    0x49
>   3c:   89 d0                   mov    %edx,%eax
>   3e:   83                      .byte 0x83
>   3f:   c2                      .byte 0xc2

So after this I loaded it up in gdb and loaded the symbols, but can't find
anything out with it.  Again I'm not a kernel programer.  I did search online
and found one other reference to something like this
http://forums.asterisk.org/viewtopic.php?f=1&t=76461&start=0  but this was a
bit old, it also says to ask Jim as well.

root at Itchy:~# lsmod |grep pci
pciradio               74743  1
dahdi                 196822  1 pciradio

I can't seem to rmmod it either.

root at Itchy:~# rmmod pciradio
Error: Module pciradio is in use

Even with --force it does not remove it.  Only a reboot clears it.

> Jan 27 12:30:53 Itchy kernel: [  953.544736] dahdi: Version: 2.10.0.1
> Jan 27 12:30:53 Itchy kernel: [  953.545510] dahdi: Telephony Interface Registered on major 196
> Jan 27 12:30:54 Itchy kernel: [  953.552710] pciradio 0000:04:00.0: enabling device (0140 -> 0143)
> Jan 27 12:30:54 Itchy kernel: [  953.552789] BUG: unable to handle kernel NULL pointer dereference at 0000000000000028
> Jan 27 12:30:54 Itchy kernel: [  953.553902] IP: [<ffffffff811b330e>] vsnprintf+0xbf/0x427
> Jan 27 12:30:54 Itchy kernel: [  953.554629] PGD 0 
> Jan 27 12:30:54 Itchy kernel: [  953.554938] Oops: 0002 [#1] SMP 
> Jan 27 12:30:54 Itchy kernel: [  953.555430] CPU 1 
> Jan 27 12:30:54 Itchy kernel: [  953.555582] Modules linked in: pciradio(O+) dahdi(O) crc_ccitt nfsd nfs nfs_acl auth_rpcgss fscache lockd sunrpc nls_utf8 nls_cp437 vfat fat loop coretemp snd_pcm snd_page_alloc snd_timer snd soundcore pcspkr efivars evdev joydev shpchp acpi_cpufreq mperf button processor ext4 crc16 jbd2 mbcache usbhid sg hid sd_mod crc_t10dif xhci_hcd ahci libahci igb i2c_algo_bit libata usbcore thermal i2c_core thermal_sys dca scsi_mod usb_common [last unloaded: scsi_wait_scan]
> Jan 27 12:30:54 Itchy kernel: [  953.562758] 
> Jan 27 12:30:54 Itchy kernel: [  953.562965] Pid: 7866, comm: modprobe Tainted: G           O 3.2.0-4-amd64 #1 Debian 3.2.65-1+deb7u1 Supermicro X9SBAA/X9SBAA
> Jan 27 12:30:54 Itchy kernel: [  953.564527] RIP: 0010:[<ffffffff811b330e>]  [<ffffffff811b330e>] vsnprintf+0xbf/0x427
> Jan 27 12:30:54 Itchy kernel: [  953.565552] RSP: 0018:ffff8802343f3c68  EFLAGS: 00010297
> Jan 27 12:30:54 Itchy kernel: [  953.566237] RAX: 0000000000000009 RBX: ffff8802343f3ce0 RCX: 0000000000000009
> Jan 27 12:30:54 Itchy kernel: [  953.567144] RDX: ffffffffa035b204 RSI: ffffffffa035b204 RDI: 0000000000000028
> Jan 27 12:30:54 Itchy kernel: [  953.568055] RBP: 0000000000000028 R08: 0000000000000009 R09: 00000000fffffffb
> Jan 27 12:30:54 Itchy kernel: [  953.568967] R10: 0000000000000000 R11: 0000000000001e94 R12: 0000000080000027
> Jan 27 12:30:54 Itchy kernel: [  953.569992] R13: 0000000000000028 R14: ffffffffa035b20d R15: 000000007fffffff
> Jan 27 12:30:54 Itchy kernel: [  953.571003] FS:  00007f3d2c4b2700(0000) GS:ffff88023fc80000(0000) knlGS:0000000000000000
> Jan 27 12:30:54 Itchy kernel: [  953.572044] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> Jan 27 12:30:54 Itchy kernel: [  953.572420] CR2: 0000000000000028 CR3: 0000000233e57000 CR4: 00000000000006e0
> Jan 27 12:30:54 Itchy kernel: [  953.572894] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> Jan 27 12:30:54 Itchy kernel: [  953.573864] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> Jan 27 12:30:54 Itchy kernel: [  953.574777] Process modprobe (pid: 7866, threadinfo ffff8802343f2000, task ffff880235d58880)
> Jan 27 12:30:54 Itchy kernel: [  953.575857] Stack:
> Jan 27 12:30:54 Itchy kernel: [  953.576127]  000000000000ffff ffffffff810ed3ca ffffffff81617d50 ffffffffa035b204
> Jan 27 12:30:54 Itchy kernel: [  953.577219]  0000000000008024 0000000000000000 0000000000000100 ffff88023353c000
> Jan 27 12:30:54 Itchy kernel: [  953.578317]  ffff880236fcb000 0000000000000000 0000000000000001 ffff88023353c004
> Jan 27 12:30:54 Itchy kernel: [  953.579419] Call Trace:
> Jan 27 12:30:54 Itchy kernel: [  953.579803]  [<ffffffff810ed3ca>] ? kmem_cache_alloc_trace+0xbe/0xce
> Jan 27 12:30:54 Itchy kernel: [  953.580704]  [<ffffffff811b36bc>] ? sprintf+0x46/0x4b
> Jan 27 12:30:54 Itchy kernel: [  953.581357]  [<ffffffff8102bc39>] ? x86_swiotlb_alloc_coherent+0x19/0x40
> Jan 27 12:30:54 Itchy kernel: [  953.582226]  [<ffffffffa035a1b3>] ? pciradio_init_one+0x286/0xa47 [pciradio]
> Jan 27 12:30:54 Itchy kernel: [  953.583131]  [<ffffffff81071321>] ? arch_local_irq_save+0x11/0x17
> Jan 27 12:30:54 Itchy kernel: [  953.583906]  [<ffffffff811c7daf>] ? local_pci_probe+0x39/0x68
> Jan 27 12:30:54 Itchy kernel: [  953.584642]  [<ffffffff811c8858>] ? pci_device_probe+0xcd/0xfa
> Jan 27 12:30:54 Itchy kernel: [  953.585570]  [<ffffffff81253451>] ? driver_probe_device+0xa8/0x138
> Jan 27 12:30:54 Itchy kernel: [  953.586466]  [<ffffffff81253530>] ? __driver_attach+0x4f/0x6f
> Jan 27 12:30:54 Itchy kernel: [  953.587199]  [<ffffffff812534e1>] ? driver_probe_device+0x138/0x138
> Jan 27 12:30:54 Itchy kernel: [  953.588001]  [<ffffffff81252080>] ? bus_for_each_dev+0x4f/0x7a
> Jan 27 12:30:54 Itchy kernel: [  953.588832]  [<ffffffff81252dea>] ? bus_add_driver+0xa5/0x1f5
> Jan 27 12:30:54 Itchy kernel: [  953.589239]  [<ffffffffa0029000>] ? 0xffffffffa0028fff
> Jan 27 12:30:54 Itchy kernel: [  953.589846]  [<ffffffff81253958>] ? driver_register+0x8d/0xf5
> Jan 27 12:30:54 Itchy kernel: [  953.591053]  [<ffffffffa0029000>] ? 0xffffffffa0028fff
> Jan 27 12:30:54 Itchy kernel: [  953.591958]  [<ffffffff811c9073>] ? __pci_register_driver+0x4d/0xb6
> Jan 27 12:30:54 Itchy kernel: [  953.635085]  [<ffffffffa0029000>] ? 0xffffffffa0028fff
> Jan 27 12:30:54 Itchy kernel: [  953.670937]  [<ffffffffa002901b>] ? pciradio_init+0x1b/0x1000 [pciradio]
> Jan 27 12:30:54 Itchy kernel: [  953.706324]  [<ffffffff81002085>] ? do_one_initcall+0x75/0x12c
> Jan 27 12:30:54 Itchy kernel: [  953.740575]  [<ffffffffa0029000>] ? 0xffffffffa0028fff
> Jan 27 12:30:54 Itchy kernel: [  953.772384]  [<ffffffff81075c39>] ? sys_init_module+0x10c/0x25b
> Jan 27 12:30:54 Itchy kernel: [  953.803110]  [<ffffffff81355ed2>] ? system_call_fastpath+0x16/0x1b
> Jan 27 12:30:54 Itchy kernel: [  953.834123] Code: 02 00 00 40 0f b6 ce ff 24 cd 18 81 42 81 4c 39 e5 73 1a 4c 89 e1 48 63 f0 48 89 ef 48 29 e9 48 39 ce 48 89 d6 0f 4e c8 48 63 c9 <f3> a4 4c 01 c5 e9 28 03 00 00 8b 13 83 fa 30 73 0d 89 d0 83 c2 
> Jan 27 12:30:54 Itchy kernel: [  953.901597] RIP  [<ffffffff811b330e>] vsnprintf+0xbf/0x427
> Jan 27 12:30:54 Itchy kernel: [  953.933086]  RSP <ffff8802343f3c68>
> Jan 27 12:30:54 Itchy kernel: [  953.963479] CR2: 0000000000000028
> Jan 27 12:30:54 Itchy kernel: [  953.993347] ---[ end trace 82a4fd90a10228d0 ]---

73's W9CR
-- 
Bryan Fields

727-409-1194 - Voice
727-214-2508 - Fax
http://bryanfields.net



More information about the App_rpt-users mailing list