bristuff-0.2.0-RC8 zaphfc: Segmentation fault unter suse 9.2

zipfll

Neuer User
Mitglied seit
24 Apr 2005
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
hallo,
gestern ist meine ueber ebay ersteigerte HFC karte bekommen, eingebaut und bristuff-0.2.0-RC8 runtergeladen und nach der anleitung von http://www.ip-phone-forum.de/forum/viewtopic.php?t=8983 installiert.

system: suse 9.2
aktueller suse kernel: 2.6.8-24.14-default

nach ausfuehren von make loadNT tritt ein Segmentation fault auf (siehe syslog meldung) und bekomme somit die HFC karte nicht zum laufen...das kernel modul zaphfc wird zwar geladen...aber ich kann es danach nicht mehr entfernen

wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc # lsmod
Module Size Used by
zaphfc 11540 1
zaptel 176772 1 zaphfc
crc_ccitt 2176 1 zaptel

wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc # rmmod zaphfc
ERROR: Module zaphfc is in use

ein AUS- UND EINSCHALTEN wie in http://www.ip-phone-forum.de/forum/viewtopic.php?t=13093 bringt nix.
in dem rechner laeuft noch ein eine AVM fritz (mein PSTN uplink) und eine TV karte.

irgendeine idee?

thx
zipfll

Code:
wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc # make loadNT
make -C /usr/src/linux-2.6 SUBDIRS=/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc ZAP=-I/home/adoehn/download/bristuff-0.2.0-RC8/zaptel-1.0.7 modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.14'

WARNING: Symbol version dump /usr/src/linux-2.6.8-24.14/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.

  Building modules, stage 2.
  MODPOST
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.14'
modprobe zaptel
insmod ./zaphfc.ko modes=1
make: *** [loadlinux26NT] Segmentation fault
wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc #

Code:
Apr 24 22:40:09 wurz kernel: module zaptel unsupported by SUSE/Novell, tainting kernel.
Apr 24 22:40:09 wurz kernel: Zapata Telephony Interface Registered on major 196
Apr 24 22:40:09 wurz kernel: zaphfc: no version for "struct_module" found: kernel tainted.
Apr 24 22:40:09 wurz kernel: module zaphfc unsupported by SUSE/Novell, tainting kernel.
Apr 24 22:40:09 wurz kernel: ACPI: PCI interrupt 0000:00:0d.0[A] -> GSI 10 (level, low) -> IRQ 10
Apr 24 22:40:09 wurz kernel: zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xe1610000 fifo 0xcf4c8000(0xf4c8000) IRQ 10 HZ 1000
Apr 24 22:40:09 wurz kernel: zaphfc: Card 0 configured for NT mode
Apr 24 22:40:09 wurz kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000
Apr 24 22:40:09 wurz kernel:  printing eip:
Apr 24 22:40:09 wurz kernel: c013e712
Apr 24 22:40:09 wurz kernel: *pde = 00000000
Apr 24 22:40:09 wurz kernel: Oops: 0000 [#1]
Apr 24 22:40:09 wurz kernel: Modules linked in: zaphfc zaptel crc_ccitt tuner saa7134 video_buf v4l2_common v4l1_compat ir_common videodev nvidia usbserial parport_pc lp parport nvram speedstep_lib freq_table thermal processor fan button battery ac snd_pcm_oss snd_mixer_oss edd snd_via82xx snd_ac97_codec snd_pcm snd_timer snd_page_alloc gameport snd_mpu401_uart snd_rawmidi snd_seq_device snd soundcore it87 eeprom i2c_sensor i2c_isa i2c_core ipv6 fcpci capidrv isdn slhc capi capifs kernelcapi joydev sg st sd_mod sr_mod scsi_mod ide_cd cdrom subfs ehci_hcd via_rhine mii uhci_hcd via_agp agpgart evdev dm_mod usbcore reiserfs
Apr 24 22:40:09 wurz kernel: CPU:    0
Apr 24 22:40:09 wurz kernel: EIP:    0060:[<c013e712>]    Tainted:  PF U VLI
Apr 24 22:40:09 wurz kernel: EFLAGS: 00010012   (2.6.8-24.14-default SL92_BRANCH-200503290927430000) 
Apr 24 22:40:09 wurz kernel: EIP is at kfree+0x22/0x50
Apr 24 22:40:09 wurz kernel: eax: 00000000   ebx: cfacc114   ecx: 00000000   edx: c1000000
Apr 24 22:40:09 wurz kernel: esi: 0000f0ff   edi: 00000006   ebp: 00000000   esp: cf42be7c
Apr 24 22:40:09 wurz kernel: ds: 007b   es: 007b   ss: 0068
Apr 24 22:40:09 wurz kernel: Process insmod (pid: 5801, threadinfo=cf42a000 task=d35a3000)
Apr 24 22:40:09 wurz kernel: Stack: cfacc114 00000002 00000000 e1691a8e 00000046 0000f0ff cfacc114 cfacc114 
Apr 24 22:40:09 wurz kernel:        00000202 00000000 e1691c94 00000004 c036aba4 c036aba4 c11e9800 00000202 
Apr 24 22:40:09 wurz kernel:        00000001 cfacc114 00000202 cfacc000 e16920da 00000001 cfacc004 00000870 
Apr 24 22:40:09 wurz kernel: Call Trace:
Apr 24 22:40:09 wurz kernel:  [<e1691a8e>] zt_reallocbufs+0x11e/0x1a0 [zaptel]
Apr 24 22:40:09 wurz kernel:  [<e1691c94>] close_channel+0x14/0x200 [zaptel]
Apr 24 22:40:09 wurz kernel:  [<e16920da>] zt_chan_reg+0x8a/0xc0 [zaptel]
Apr 24 22:40:09 wurz kernel:  [<e1696726>] zt_register+0xc6/0x240 [zaptel]
Apr 24 22:40:09 wurz kernel:  [<c01d27e9>] vsnprintf+0x369/0x510
Apr 24 22:40:09 wurz kernel:  [<c01d2a0d>] vsprintf+0xd/0x10
Apr 24 22:40:09 wurz kernel:  [<c01d2a21>] sprintf+0x11/0x20
Apr 24 22:40:09 wurz kernel:  [<e1615224>] zthfc_initialize+0x134/0x1a0 [zaphfc]
Apr 24 22:40:09 wurz kernel:  [<e1615257>] zthfc_initialize+0x167/0x1a0 [zaphfc]
Apr 24 22:40:09 wurz kernel:  [<c011cabf>] printk+0xf/0x20
Apr 24 22:40:09 wurz kernel:  [<e1615302>] hfc_findCards+0x72/0x3a0 [zaphfc]
Apr 24 22:40:09 wurz kernel:  [<e161566a>] init_module+0x3a/0x60 [zaphfc]
Apr 24 22:40:09 wurz kernel:  [<c01307f4>] sys_init_module+0x114/0x1a0
Apr 24 22:40:09 wurz kernel:  [<c0105c69>] sysenter_past_esp+0x52/0x79
Apr 24 22:40:09 wurz kernel: Code: d0 5b 5e 5f c3 8d 74 26 00 57 85 c0 56 89 c6 53 74 2d 9c 5f fa 8d 80 00 00 00 40 c1 e8 0c 8b 15 f0 97 43 c0 c1 e0 05 8b 44 02 18 <8b> 18 8b 13 3b 53 04 73 0f 89 74 93 10 8b 03 40 89 03 57 9d 5b
 
HI zipfll!

Module Size Used by
zaphfc 11540 1

heißt, das modul wird schon von einem Programm benutzt.
Welches es ist, kann man z. B. mit

# lsof -n|grep /dev/zap/

erfahren.

Erst wenn man die Programme, die das Modul benutzen,
beendet, kann man es entladen.

Bei mir läuft bristuff-0.2.0-RC8 seit gestern ohne Probs.

Gruß
britzelfix
 
britzelfix schrieb:
HI zipfll!
Erst wenn man die Programme, die das Modul benutzen,
beendet, kann man es entladen.

aber ich hab doch kein programm geladen, was das modul benutzt :)

lsof -n | grep zap gibt nichts aus.

die segmentation fault meldung macht mich nervös ;)

gruesse
zipfll
 
Code:
WARNING: Symbol version dump /usr/src/linux-2.6.8-24.14/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.
Diese Meldung könnte der Schlüssel sein. Eventuell reicht es, wenn du beim Übersetzen deines verwendeten Kernels das version tagging anschaltest. Die Frage, wie das am besten zu bewerkstelligen ist, sollte dir aber lieber jemand beantworten, der sich mit SuSE gut auskennt ;)
 
Hi,

bei Suse ist die Datei Module.symvers woanders zu suchen. Am besten mal per Yast die "findutils-locate" installieren (generell sehr nützliches Tool), dann am Prompt "updatedb" eingeben, warten bis fertig, und anschließend "locate Module.symvers". Dann in dem /usr/src/linux-2.6.8-24.14/ Verzeichnis mit "ln -s" einen Link auf die Fundstelle der Datei anlegen.

Falls die Datei gar nicht gefunden werden kann, mal im Yast checken, ob kernel-syms oder so ähnlich überhaupt installiert ist (auf meinen 9.3er CDs ist das z.B. nicht mehr drauf, weshalb es der Installer gar nicht anbietet wenn man von CD installiert hat, auf der DVD ists aber drauf). Falls kein DVD-Laufwerk im Linux-PC vorhanden ist, die Datei an einem anderen Rechner von der DVD holen, auf den Linux-Rechner kopieren und dann per "yast -i Dateiname" nachinstallieren.

Gruß, Jens
 
hoerbie schrieb:
Hi,

bei Suse ist die Datei Module.symvers woanders zu suchen. Am besten mal per Yast die "findutils-locate" installieren (generell sehr nützliches Tool), dann am Prompt "updatedb" eingeben, warten bis fertig, und anschließend "locate Module.symvers". Dann in dem /usr/src/linux-2.6.8-24.14/ Verzeichnis mit "ln -s" einen Link auf die Fundstelle der Datei anlegen.

hiho,
also ein find . -name "Moduke.symvers" tuts auch. Hat sich versteckt unter /usr/src/linux-2.6.8-24.14-obj/i386/default/Module.symvers

ein symlink auf die datei bringt leider nichts -

Code:
wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc # make loadNT
make -C /usr/src/linux-2.6 SUBDIRS=/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc ZAP=-I/home/adoehn/download/bristuff-0.2.0-RC8/zaptel-1.0.7 modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.14'
  CC [M]  /home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.o
/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.c: In function `hfc_findCards':
/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.c:987: warning: use of cast expressions as lvalues is deprecated
/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.c:987: warning: use of cast expressions as lvalues is deprecated
  Building modules, stage 2.
  MODPOST
  CC      /home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.mod.o
  LD [M]  /home/adoehn/download/bristuff-0.2.0-RC8/zaphfc/zaphfc.ko
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.14'
modprobe zaptel
insmod ./zaphfc.ko modes=1
make: *** [loadlinux26NT] Segmentation fault
wurz:/home/adoehn/download/bristuff-0.2.0-RC8/zaphfc # cd /usr/src/linux

er laed ja auch das modul, aber danach gibts direkt den seg fault

Apr 25 22:55:02 wurz kernel: zaphfc: Card 0 configured for NT mode
Apr 25 22:55:02 wurz kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000
Apr 25 22:55:02 wurz kernel: printing eip:
Apr 25 22:55:02 wurz kernel: c013e712
Apr 25 22:55:02 wurz kernel: *pde = 00000000
Apr 25 22:55:02 wurz kernel: Oops: 0000 [#1]

interrupt problem evtl?

gruesse
zipffl
 
Hi!

Ich hab da nun etwas gefunden. Das Netz steckt voll
von SuSE Fehlermeldungen.

Versuche mal folgendes:

su -
cd /usr/src/linux
make cloneconfig
make prepare

danach das komplette Bristuff-Paket neu compilieren.

Gruß
britzelfix
 
britzelfix schrieb:
Hi!

Ich hab da nun etwas gefunden. Das Netz steckt voll
von SuSE Fehlermeldungen.

Versuche mal folgendes:

su -
cd /usr/src/linux
make cloneconfig
make prepare

danach das komplette Bristuff-Paket neu compilieren.

Gruß
britzelfix

bringt alles nichts, denn das genau habe ich vorher auch getan?!
ich bin immer noch bei dem segmentation fault :-(

gruesse
zipfll
 
Ich habe da noch etwas gefunden
echo "2" > /proc/sys/kernel/unsupported
vielleicht klappt es.

Im zaphfc-Quelltext steht:

MODULE_LICENSE("GPL");

und wenn Du das Module mit den entprechenden
Modversions compiliert hast, dann ist ein "tainting kernel"
normalerweise nicht möglich. Und da kommen wir
zum Pudels-Kern. Unter Linux ist fast alles GPL'ed.
SuSE dagegen kocht sein eigenes Süppchen. Hat von
Anfang an und macht es offenschtlich immer noch.
Sie ist zu nichts anderem kompatibel als zu sich selbst
und hält sich an keine Konventionen.

Vielleicht fragst Du mal deshalb in den entsprechenden
SuSE-Foren nach. Ansonsten gibt es eine Menge
anderer GNU/Linux Distributionen, die weniger
Kopfschmerzen bereiten und für die es mehr
Support gibt.

Gruß
britzelfix
 
britzelfix schrieb:
Ich habe da noch etwas gefunden
echo "2" > /proc/sys/kernel/unsupported
vielleicht klappt es.

Im zaphfc-Quelltext steht:

MODULE_LICENSE("GPL");

und wenn Du das Module mit den entprechenden
Modversions compiliert hast, dann ist ein "tainting kernel"
normalerweise nicht möglich. Und da kommen wir
zum Pudels-Kern. Unter Linux ist fast alles GPL'ed.
SuSE dagegen kocht sein eigenes Süppchen. Hat von
Anfang an und macht es offenschtlich immer noch.
Sie ist zu nichts anderem kompatibel als zu sich selbst
und hält sich an keine Konventionen.

ich verstehe nicht, warum das dann bei einem default kernel der suse 9.1
bei einem freund out-of-the-box tut. bristuff-0.2.0-RC8a bringt da auch keinen unterschied bei meiner suse 9.2

leider immer noch gleicher status: seg fault. koennte das problem vieleicht mit ACPI zusammenhaengen?

gruesse
zipfll
 
zipfll!

warum es bei deinem Freund geht kann
ich dir auch nichts sagen.

Was Du versuchen könntest ist:

*) Eine andere Linux Distri probieren.

*) Mit "init 1" in single user mode gehen,
alle Module deinstalleren(rmmod) und
veruschen nur zaphfc zu laden.

*) Alle PCI karten bis auf ISDN entfernen
und versuchen zaphfc zu laden.

Das mit ACPI ist ebenfalls möglich.
Warum probierst Du es nicht aus?
Den Kernel-Parametern einfach ein
ACPI=no verpassen,
(s. /usr/src/linux/Documentation/kernel-parameters.txt)

oder per BIOS die Karte auf einen anderen
IRQ zwingen.

Der "tainting kernel" gefällt mir am wenigsten.
Ein "verdorbener" Kernel ist einfach inakzeptabel.

Gruß
britzelfix
 
britzelfix schrieb:
zipfll!

warum es bei deinem Freund geht kann
ich dir auch nichts sagen.

Was Du versuchen könntest ist:

*) Eine andere Linux Distri probieren.

*) Mit "init 1" in single user mode gehen,
alle Module deinstalleren(rmmod) und
veruschen nur zaphfc zu laden.

*) Alle PCI karten bis auf ISDN entfernen
und versuchen zaphfc zu laden.

Das mit ACPI ist ebenfalls möglich.
Warum probierst Du es nicht aus?
Den Kernel-Parametern einfach ein
ACPI=no verpassen,
(s. /usr/src/linux/Documentation/kernel-parameters.txt)

oder per BIOS die Karte auf einen anderen
IRQ zwingen.

Der "tainting kernel" gefällt mir am wenigsten.
Ein "verdorbener" Kernel ist einfach inakzeptabel.

danke fuer die info britzel, ACPI ist auf jeden fall nicht schuld.
gleiches problem tritt immer noch auf.

ich will nicht auf eine andere disti wechseln, da ich auf dem system einen eigenen postfix MTA, spamassassin, amavisd-new, saslauthd, cyrus und aufwendige sieve scripte laufen habe. fuer wechsel zu einer anderen disti habe ich keine zeit und lust. ;)

warum ich den default kernel verwende? weil ich keine lust und zeit habe den kernel selbst zu kompilieren und in den meisten faellen der default kernel ausreicht. :twisted: soweit ich das beurteilen kann, bin ich nicht der einzige der suse 9.2 einsetzt und es lauffaehige installationen mit dem zaphfc kernel modul unter dem tainting kernel der suse disti gibt.

ich werd aber auf einem anderen rechner mal die deb installieren und dort mein glueck nochmals versuchen, was mich aber in keinster weise weiterbringt, da nur der MTA unter suse 9.2 dauerhauft eingeschaltet ist. :)

gruesse
zipffl
 
Wäre zu schön gewesen.
make loadNT liefert jetzt:
make -C /usr/src/linux SUBDIRS=/usr/src/asterisk/bristuff-0.2.0-RC8/zaphfc ZAP=-I/usr/src/asterisk/bristuff-0.2.0-RC8/zaptel-1.0.7 modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.14'
Building modules, stage 2.
MODPOST
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.14'
modprobe zaptel
insmod ./zaphfc.ko modes=1
insmod: error inserting './zaphfc.ko': -1 Unknown symbol in module
make: *** [loadlinux26NT] Fehler 1

in /var/log/messages steht:
Apr 29 17:29:09 blechkiste kernel: module zaptel unsupported by SUSE/Novell, tainting kernel.
Apr 29 17:29:09 blechkiste kernel: Zapata Telephony Interface Registered on major 196
Apr 29 17:29:10 blechkiste kernel: module zaphfc unsupported by SUSE/Novell, tainting kernel.
Apr 29 17:29:10 blechkiste kernel: zaphfc: disagrees about version of symbol zt_receive
Apr 29 17:29:10 blechkiste kernel: zaphfc: Unknown symbol zt_receive
Apr 29 17:29:10 blechkiste kernel: zaphfc: disagrees about version of symbol zt_ec_chunk
Apr 29 17:29:10 blechkiste kernel: zaphfc: Unknown symbol zt_ec_chunk
Apr 29 17:29:10 blechkiste kernel: zaphfc: disagrees about version of symbol zt_transmit
Apr 29 17:29:10 blechkiste kernel: zaphfc: Unknown symbol zt_transmit
Apr 29 17:29:10 blechkiste kernel: zaphfc: disagrees about version of symbol zt_unregister
Apr 29 17:29:10 blechkiste kernel: zaphfc: Unknown symbol zt_unregister
Apr 29 17:29:10 blechkiste kernel: zaphfc: disagrees about version of symbol zt_register
Apr 29 17:29:10 blechkiste kernel: zaphfc: Unknown symbol zt_register
 
Also bei mir klappt es jetzt einwandfrei und ich hatte vorher dieselben Probleme. Allerdings nutze ich nicht make loadNT sondern ich habe mir ein Script in /etc/init.d gebastelt...

/etc/init.d/asterisk
[...]
Code:
case "$1" in
    start)
        echo -n "Starting ASTERISK "
        modprobe zaptel && insmod /lib/modules/2.6.8-24.14-default/misc/zaphfc.ko modes=1 && ztcfg -v
        export TERM="linux"
        sleep 2
        $ASTERISK
        rc_status -v
        ;;
    stop)
        echo -n "Shutting down ASTERISK "
        $ASTERISK -rx 'stop now'
        sleep 2
        rmmod zaphfc
        rmmod zaptel
        killall -9 mpg123
        rc_status -v
        ;;
[...]
 
klingt ja recht gut, aber mein "Unknown symbol" krieg ich einfach nicht weg.
 
Ok, also nochma langsam...

SuSE 9.2 mit K 2.6.8-24.14
Kernelsourcen installiert
ln -s /usr/src/linux-2.6.8-24.14 /usr/src/linux-2.6 gemacht
in /usr/src/linux make cloneconfig prepare gemacht
Die SuSE Zap Module in /lib/modules/`uname -r`/extra gelöscht (s. Wiki)
depmod -a gemacht
zur Sicherheit rebootet
bristuff in /usr/src entpackt
Im bristuff Dir ./download.sh und ./compile.sh aufgerufen

Dann sollte es klappen...

Wenns dann nicht klappt, les Dich durch alle READMEs. Eventuell hast Du irgendein -devel Paket nicht installiert, was zum Compilieren von ZAPHFC notwendig ist.
 
knitter schrieb:
klingt ja recht gut, aber mein "Unknown symbol" krieg ich einfach nicht weg.

jo, is bei mir auch...meldung im syslog:

Apr 30 00:48:22 wurz kernel: module zaptel unsupported by SUSE/Novell, tainting kernel.
Apr 30 00:48:23 wurz kernel: Zapata Telephony Interface Registered on major 196
Apr 30 00:48:23 wurz kernel: module zaphfc unsupported by SUSE/Novell, tainting kernel.
Apr 30 00:48:23 wurz kernel: zaphfc: disagrees about version of symbol zt_receive
Apr 30 00:48:23 wurz kernel: zaphfc: Unknown symbol zt_receive
Apr 30 00:48:23 wurz kernel: zaphfc: disagrees about version of symbol zt_ec_chunk
Apr 30 00:48:23 wurz kernel: zaphfc: Unknown symbol zt_ec_chunk
Apr 30 00:48:23 wurz kernel: zaphfc: disagrees about version of symbol zt_transmit
Apr 30 00:48:23 wurz kernel: zaphfc: Unknown symbol zt_transmit
Apr 30 00:48:23 wurz kernel: zaphfc: disagrees about version of symbol zt_unregister
Apr 30 00:48:23 wurz kernel: zaphfc: Unknown symbol zt_unregister
Apr 30 00:48:23 wurz kernel: zaphfc: disagrees about version of symbol zt_register
Apr 30 00:48:23 wurz kernel: zaphfc: Unknown symbol zt_register

gruesse
zipfll
 
bristuff-0.2.0RC8 oder 8a?
Ich hab 8...
Wenns das nicht ist, fällt mir auch nix mehr ein...
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.