# Asterisk und Anlagenanschluss (PTP), wie am besten

## stiwi

Hallo,

ich versuche seit langer Zeit Asterisk an einem Anlagenanschluss (PTP) zum laufen zu bekommen. Meine erste viel versprechende Konfiguration sah folgendermassen aus:

Asterisk 1.2

Chan-Capi

AVM B1 PCI im PTP mode

Die Konfiguration hat immer so einen Tag lang funktioniert, dann war der Rechner nicht mehr per Ping erreichbar. Daraufhin habe ich den Rechner auf eine andere Hardware geklont. Vorher Via C7 1 Ghz, jetzt P4 2,6. Daraufhin lief die Konfig auch wieder so einen Tag, jedoch konnte man daraufhin keine IO mehr auslösen. Also Login ging noch bis zur Passwortabfrage, wenn man eingeloggt war, konnte man nur noch Befehle starten, die anscheinend noch im Speicher gecached waren.

Daraufhin habe ich das System auf Asterisk 1.4 aktualisiert. Selbe Problem. Ich meine Vermutung liegt nahe, dass die IO wegbricht. Ein kurz aufgefangene Kernel-Panic schrieb etwas von reiserfs und probleme mit dem buffer.c, ein noch schnell erstelles ps ax zeigte mit das der prozess [reiserfs] auf D (wartet auf IO) feststeht. System wieder tot. Tausch der AVM B1 gegen Baugleiche auch kein Erfolg. Neueren Kernel gebaut, keinen Erfolg, Festplatte getauscht, kein Erfolg. Wieder auf andere Hardware kopiert, kein Erfolg.

Nun habe ich mir gesagt, weg mit AVM B1 und Capi. Habe eine AVM Fritz PCI und mISDN zum laufen gebracht.

Momentan also:

Asterisk 1.4 mit misdn useflag

und misdn mit avmfritz treiber im te_ptp modus.

Gentoo-Kernel 2.6.24-r7

Die Konfig funktioniert, bis ca. die 3te Person anruft. Dann bekomme ich folgende Kernel-Panic:

```

BUG: unable to handle kernel paging request at virtual address 74736e69

printing eip: c0163b03 *pde = 00000000 

Oops: 0000 [#1] SMP 

Modules linked in: mISDN_dsp avmfritz mISDN_capi l3udss1 mISDN_l2 mISDN_l1 capi capifs kernelcapi mISDN_isac mISDN_core sis900 scsi_wait_scan sata_sis pata_sis

Pid: 3223, comm: mISDNd Not tainted (2.6.24-gentoo-r7 #3)

EIP: 0060:[<c0163b03>] EFLAGS: 00010006 CPU: 0

EIP is at __kmalloc+0x7c/0xbd

EAX: 00000000 EBX: 74736e69 ECX: c05c31c0 EDX: c021b17b

ESI: c05c31c0 EDI: 00000282 EBP: c120547c ESP: cf073df8

 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068

Process mISDNd (pid: 3223, ti=cf072000 task=cf8e3a40 task.ti=cf072000)

Stack: ffffffff 00000000 000000d0 0000000e cd080000 cf073e3c d092f098 c021b17b 

       cf073e3c cf073e3c d092f0d8 d092f090 00000001 d092f008 c02817a3 d092f098 

       c053be5f d092f0d8 ffffffff d0900280 00000000 d092f098 d092f098 ffffffea 

Call Trace:

 [<c021b17b>] kobject_set_name+0x4f/0x94

 [<c02817a3>] class_device_add+0x6b/0x329

 [<d08fb58b>] mISDN_register_sysfs_inst+0x43/0x153 [mISDN_core]

 [<d08f588b>] register_layer+0x1eb/0x222 [mISDN_core]

 [<c021e51c>] vsnprintf+0x442/0x47e

 [<d08f4302>] mISDN_ctrl+0x10d/0x63e [mISDN_core]

 [<c012cb54>] lock_timer_base+0x19/0x35

 [<c012cc67>] __mod_timer+0x99/0xa3

 [<d0960662>] init_module+0x561/0x15c0 [mISDN_dsp]

 [<d08f48ed>] get_next_instance+0xba/0x112 [mISDN_core]

 [<d08f5399>] set_stack+0x14c/0x1f0 [mISDN_core]

 [<c042f531>] schedule+0x53b/0x570

 [<d08f4514>] mISDN_ctrl+0x31f/0x63e [mISDN_core]

 [<d08f4e2c>] mISDN_module_unregister+0x243/0x2dc [mISDN_core]

 [<c03ad405>] __kfree_skb+0x8/0x63

 [<d08f41f5>] mISDN_ctrl+0x0/0x63e [mISDN_core]

 [<d08f4dab>] mISDN_module_unregister+0x1c2/0x2dc [mISDN_core]

 [<d08f4c6a>] mISDN_module_unregister+0x81/0x2dc [mISDN_core]

 [<c0135211>] autoremove_wake_function+0x0/0x35

 [<d08f4c6a>] mISDN_module_unregister+0x81/0x2dc [mISDN_core]

 [<c0105a43>] kernel_thread_helper+0x7/0x10

 =======================

Code: 08 a0 60 c0 8b 6c 86 70 8b 5d 00 85 db 75 19 89 14 24 8b 54 24 08 83 c9 ff 89 f0 89 6c 24 04 e8 97 ef ff ff 89 c3 eb 09 8b 45 0c <8b> 04 83 89 45 00 57 9d 8b 44 24 08 25 00 80 00 00 66 85 c0 74 

EIP: [<c0163b03>] __kmalloc+0x7c/0xbd SS:ESP 0068:cf073df8

---[ end trace 7d730c639692b342 ]---

BUG: unable to handle kernel paging request at virtual address 74736e69

printing eip: c0163059 *pde = 00000000 

Oops: 0000 [#2] SMP 

Modules linked in: mISDN_dsp avmfritz mISDN_capi l3udss1 mISDN_l2 mISDN_l1 capi capifs kernelcapi mISDN_isac mISDN_core sis900 scsi_wait_scan sata_sis pata_sis

Pid: 2311, comm: udevd Tainted: G      D (2.6.24-gentoo-r7 #3)

EIP: 0060:[<c0163059>] EFLAGS: 00010006 CPU: 0

EIP is at kmem_cache_alloc+0x40/0x7e

EAX: 00000000 EBX: 74736e69 ECX: 00000000 EDX: c017b0f1

ESI: c120547c EDI: 00000296 EBP: c05c31c0 ESP: cfa51e9c

 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068

Process udevd (pid: 2311, ti=cfa50000 task=cf95c540 task.ti=cfa50000)

Stack: cd0c4000 000240d0 000000d0 cd0f5000 fffffff4 c01941f3 cd0f7380 c017b0f1 

       00000000 cd0f5000 fffffff4 00001000 cd0f7380 c01941d5 cf80c180 00000000 

       cf5fd010 cd0f7380 c018f23a cd0f7380 cf5fd010 cfa51f30 c018f200 c0164c67 

Call Trace:

 [<c01941f3>] show_stat+0x0/0x73d

 [<c017b0f1>] single_open+0x22/0x68

 [<c01941d5>] stat_open+0x54/0x72

 [<c018f23a>] proc_reg_open+0x3a/0x4a

 [<c018f200>] proc_reg_open+0x0/0x4a

 [<c0164c67>] __dentry_open+0xbe/0x16b

 [<c0164d8e>] nameidata_to_filp+0x24/0x33

 [<c0164dcf>] do_filp_open+0x32/0x39

 [<c016e296>] sys_symlinkat+0xb3/0xbd

 [<c0164b30>] get_unused_fd_flags+0x52/0xc4

 [<c0164e1a>] do_sys_open+0x44/0xc5

 [<c0164ed4>] sys_open+0x1c/0x1e

 [<c0104df2>] sysenter_past_esp+0x5f/0x85

 =======================

Code: a1 08 a0 60 c0 8b 74 85 70 8b 1e 85 db 75 19 89 14 24 8b 54 24 08 83 c9 ff 89 e8 89 74 24 04 e8 41 fa ff ff 89 c3 eb 08 8b 46 0c <8b> 04 83 89 06 57 9d 8b 44 24 08 25 00 80 00 00 66 85 c0 74 1f 

EIP: [<c0163059>] kmem_cache_alloc+0x40/0x7e SS:ESP 0068:cfa51e9c

---[ end trace 7d730c639692b342 ]---

hdlc_down unknown prim(280)

We got Message with Invalid Callref

BUG: unable to handle kernel paging request at virtual address 00001034

printing eip: c01b2f2e *pde = 00000000 

Oops: 0002 [#3] SMP 

Modules linked in: mISDN_dsp avmfritz mISDN_capi l3udss1 mISDN_l2 mISDN_l1 capi capifs kernelcapi mISDN_isac mISDN_core sis900 scsi_wait_scan sata_sis pata_sis

Pid: 208, comm: pdflush Tainted: G      D (2.6.24-gentoo-r7 #3)

EIP: 0060:[<c01b2f2e>] EFLAGS: 00010286 CPU: 0

EIP is at write_ordered_buffers+0x1b9/0x276

EAX: 00001000 EBX: cf2c0110 ECX: cd09a300 EDX: cd0da700

ESI: d08250e0 EDI: 00000000 EBP: cd0daf5c ESP: cf871da8

 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068

Process pdflush (pid: 208, ti=cf870000 task=cf97aa80 task.ti=cf870000)

Stack: c01b2b32 cf698428 cf69c038 00000001 00000000 00120050 000009af cf4022d4 

       00000000 cf69c188 000009af 00000000 c01807f2 00120050 c0577898 c118a440 

       000009af fffffffa cf402230 cf4022d4 00000000 00000008 000009af cf69c188 

Call Trace:

 [<c01b2b32>] write_ordered_chunk+0x0/0x5f

 [<c01807f2>] __find_get_block_slow+0x10f/0x119

 [<c0180b32>] __find_get_block+0x13f/0x149

 [<c01b325f>] flush_commit_list+0x191/0x56e

 [<c012cc67>] __mod_timer+0x99/0xa3

 [<c011fa2c>] __wake_up+0x32/0x42

 [<c01b5070>] do_journal_end+0xbba/0xc09

 [<c011f09b>] find_busiest_group+0x20a/0x5f6

 [<c01b511f>] journal_end_sync+0x60/0x65

 [<c01a84ed>] reiserfs_sync_fs+0x32/0x54

 [<c0167b96>] sync_supers+0x4f/0x8c

 [<c014e57e>] pdflush+0x0/0x1aa

 [<c014e14f>] wb_kupdate+0x25/0xdf

 [<c014e57e>] pdflush+0x0/0x1aa

 [<c014e694>] pdflush+0x116/0x1aa

 [<c014e12a>] wb_kupdate+0x0/0xdf

 [<c013514a>] kthread+0x38/0x5e

 [<c0135112>] kthread+0x0/0x5e

 [<c0105a43>] kernel_thread_helper+0x7/0x10

 =======================

Code: 01 8d 44 24 04 e8 25 fc ff ff 89 f0 e8 e2 d7 27 00 e9 ae 00 00 00 8b 84 24 8c 00 00 00 83 e8 08 8b 40 04 89 84 24 90 00 00 00 90 <ff> 40 34 8b 84 24 90 00 00 00 e8 e9 fd ff ff 8b 84 24 90 00 00 

EIP: [<c01b2f2e>] write_ordered_buffers+0x1b9/0x276 SS:ESP 0068:cf871da8

---[ end trace 7d730c639692b342 ]---

WARNING: at kernel/exit.c:917 do_exit()

Pid: 208, comm: pdflush Tainted: G      D 2.6.24-gentoo-r7 #3

 [<c0127a40>] do_exit+0x49/0x614

 [<c0106169>] die+0x1d4/0x1dc

 [<c04320cf>] do_page_fault+0x4d3/0x5b5

 [<c0211e78>] submit_bio+0xc8/0xcf

 [<c014aa31>] mempool_alloc+0x28/0xc6

 [<c0431bfc>] do_page_fault+0x0/0x5b5

 [<c043099a>] error_code+0x72/0x78

 [<c01b2f2e>] write_ordered_buffers+0x1b9/0x276

 [<c01b2b32>] write_ordered_chunk+0x0/0x5f

 [<c01807f2>] __find_get_block_slow+0x10f/0x119

 [<c0180b32>] __find_get_block+0x13f/0x149

 [<c01b325f>] flush_commit_list+0x191/0x56e

 [<c012cc67>] __mod_timer+0x99/0xa3

 [<c011fa2c>] __wake_up+0x32/0x42

 [<c01b5070>] do_journal_end+0xbba/0xc09

 [<c011f09b>] find_busiest_group+0x20a/0x5f6

 [<c01b511f>] journal_end_sync+0x60/0x65

 [<c01a84ed>] reiserfs_sync_fs+0x32/0x54

 [<c0167b96>] sync_supers+0x4f/0x8c

 [<c014e57e>] pdflush+0x0/0x1aa

 [<c014e14f>] wb_kupdate+0x25/0xdf

 [<c014e57e>] pdflush+0x0/0x1aa

 [<c014e694>] pdflush+0x116/0x1aa

 [<c014e12a>] wb_kupdate+0x0/0xdf

 [<c013514a>] kthread+0x38/0x5e

 [<c0135112>] kthread+0x0/0x5e

 [<c0105a43>] kernel_thread_helper+0x7/0x10

 =======================

------------[ cut here ]------------

kernel BUG at fs/reiserfs/journal.c:1036!

invalid opcode: 0000 [#4] SMP 

Modules linked in: mISDN_dsp avmfritz mISDN_capi l3udss1 mISDN_l2 mISDN_l1 capi capifs kernelcapi mISDN_isac mISDN_core sis900 scsi_wait_scan sata_sis pata_sis

Pid: 2205, comm: reiserfs/0 Tainted: G      D (2.6.24-gentoo-r7 #3)

EIP: 0060:[<c01b3132>] EFLAGS: 00010246 CPU: 0

EIP is at flush_commit_list+0x64/0x56e

EAX: cfad4fc0 EBX: d0835134 ECX: cf85a800 EDX: c04fc0cb

ESI: d0825000 EDI: cd0daf00 EBP: 00000000 ESP: cf1c5f38

 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068

Process reiserfs/0 (pid: 2205, ti=cf1c4000 task=cfad4fc0 task.ti=cf1c4000)

Stack: 00000000 00000000 ffffffff ffffffff c0569580 00000000 c1208400 00000001 

       cf85a800 00000020 0000cf96 d0825000 c042f531 00000000 cf1c5fa0 00000000 

       d0835134 d0825000 cf85a800 00000000 c01b670f cfb23500 d0835134 c01b66d6 

Call Trace:

 [<c042f531>] schedule+0x53b/0x570

 [<c01b670f>] flush_async_commits+0x39/0x41

 [<c01b66d6>] flush_async_commits+0x0/0x41

 [<c01320ea>] run_workqueue+0x76/0xf6

 [<c013293b>] worker_thread+0x0/0xc5

 [<c01329f5>] worker_thread+0xba/0xc5

 [<c0135211>] autoremove_wake_function+0x0/0x35

 [<c013514a>] kthread+0x38/0x5e

 [<c0135112>] kthread+0x0/0x5e

 [<c0105a43>] kernel_thread_helper+0x7/0x10

 =======================

Code: 20 e8 98 ff ff ff 83 7f 14 00 c7 44 24 34 00 00 00 00 0f 85 11 05 00 00 64 a1 00 a0 60 c0 90 ff 80 1c 05 00 00 83 7f 08 00 75 04 <0f> 0b eb fe 8b 5c 24 2c 8b 44 24 28 3b 43 1c 75 04 0f 0b eb fe 

EIP: [<c01b3132>] flush_commit_list+0x64/0x56e SS:ESP 0068:cf1c5f38

---[ end trace 7d730c639692b342 ]---

WARNING: at kernel/exit.c:917 do_exit()

Pid: 2205, comm: reiserfs/0 Tainted: G      D 2.6.24-gentoo-r7 #3

 [<c0127a40>] do_exit+0x49/0x614

 [<c0106169>] die+0x1d4/0x1dc

 [<c0106390>] do_invalid_op+0x0/0x8a

 [<c0106411>] do_invalid_op+0x81/0x8a

 [<c01b3132>] flush_commit_list+0x64/0x56e

 [<c0212f08>] blk_remove_plug+0x4f/0x5b

 [<c021a238>] __next_cpu+0x12/0x21

 [<c011f09b>] find_busiest_group+0x20a/0x5f6

 [<c042f9b9>] out_of_line_wait_on_bit+0x63/0x6b

 [<c043099a>] error_code+0x72/0x78

 [<c01b3132>] flush_commit_list+0x64/0x56e

 [<c042f531>] schedule+0x53b/0x570

 [<c01b670f>] flush_async_commits+0x39/0x41

 [<c01b66d6>] flush_async_commits+0x0/0x41

 [<c01320ea>] run_workqueue+0x76/0xf6

 [<c013293b>] worker_thread+0x0/0xc5

 [<c01329f5>] worker_thread+0xba/0xc5

 [<c0135211>] autoremove_wake_function+0x0/0x35

 [<c013514a>] kthread+0x38/0x5e

 [<c0135112>] kthread+0x0/0x5e

 [<c0105a43>] kernel_thread_helper+0x7/0x10

 =======================

```

So langsam bin mit meinem Latein am Ende. Ist Capi und AVM B1 nun doch besser? Wer verursacht mein Problem ?

Hat jemand eine lauffähige Asterisk mit PTP Modus ? Dann würde mich die Hardware und die Config (mISDN oder Capi) interessieren.

Danke

Stephan

----------

## Ruad

Mhh, es ist jetzt fast zwei Jahre her, dass ich einen lauffähigen Asterisk-Server hatte. Ich kann dir auf jeden Fall sagen, dass bei mir folgendes stabil gelaufen ist:

PIII-800, irgendein Asus-Board mit 256MB

AVM B1 über capi am PtP

AVM Fritz Card PCI über capi am PtMP Anschluss

Beides war gleichzeitig lauffähig und auch da habe ich, glaub ich, schon den 1.4er Zweig benutzt.

Mit Konfigurationen kann ich leider nicht mehr dienen. Weiß nur, dass ich Opensuse benutzt habe und Asterisk direkt aus den Sourcen selbst kompiliert habe.

Viel Erfolg, die Konfiguration selbst muss auf jeden Fall klappen

----------

## himpierre

Sieht für mich eher nach einem Reiserfs Problem aus. Ich würde mal auf ext3 umstellen und dann schauen. Ich benutze hier übrigens eine Beronet Karte (mISDN) an einem Anlagenanschluss. Ohne Probleme.

----------

## stiwi

 *himpierre wrote:*   

> Sieht für mich eher nach einem Reiserfs Problem aus. Ich würde mal auf ext3 umstellen und dann schauen. Ich benutze hier übrigens eine Beronet Karte (mISDN) an einem Anlagenanschluss. Ohne Probleme.

 

Danke für die Antwort. Nach der Umstellung auf ext3 klemmt der Prozess [ata_aux] und die kernel panic sieht identisch aus, nur das die reiser_functionen in stacktrace jetzt ext3 functionen sind  :Wink: 

----------

## himpierre

Oh. Haste irgendwelche komischen Module im Asterisk? Wie hast Du Asterisk installiert?

----------

## stiwi

Kurz zur Information:

ich habe noch weiter getestet und Ubuntu installiert, und dann Asterisk aus den Ubuntu deb-Packetet. Der Fehler war identisch. Dann habe ich über das Ubuntu-Forum herausgefunden, das chan-capi von Ubuntu buggy ist und habe es über apt aus den sourcen gebildet und seit dem geht es.

Ich muss das jetzt noch mal unter gentoo testen. Aber der Fehler liegt in der chan-capi!

----------

