Suse 8.2 : Wieso kann ich ReiserFs nicht in den Kernel kompilieren ??
Hallo Liste, ich versuche fest in den Kernel Reiserfs zu kompilieren und bekomme linker Fehler : in function ... prepare_error_buf... Wenn ichs als Modul kompiliere gehts ! Was kann das sein ? Gruesse Filip
----- Original Message ----- From: "Filip Lyncker" <lyncker@clubtracks.de> To: <suse-linux@suse.com> Sent: Saturday, November 01, 2003 1:04 PM Subject: Suse 8.2 : Wieso kann ich ReiserFs nicht in den Kernel kompilieren ??
Das ist übrignes die exakte Fehlermeldung : ld -m elf_i386 -T /usr/src/linux-2.4.20.SuSE/arch/i386/vmlinux.lds -e stext --warn-common arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o init/version.o init/do_mounts.o \ --start-group \ arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \ drivers/cpufreq/cpufreq.o drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/char/drm/drm.o drivers/net/fc/fc.o drivers/net/wan/wan.o drivers/cdrom/driver.o drivers/pci/driver.o drivers/net/pcmcia/pcmcia_net.o drivers/net/wireless/wireless_net.o drivers/video/video.o drivers/media/media.o drivers/input/inputdrv.o drivers/i2c/busses/i2c-busses.o drivers/i2c/chips/i2c-chips.o \ net/network.o \ abi/abi.o \ /usr/src/linux-2.4.20.SuSE/arch/i386/lib/lib.a /usr/src/linux-2.4.20.SuSE/lib/lib.a /usr/src/linux-2.4.20.SuSE/arch/i386/lib/lib.a \ --end-group \ -o vmlinux fs/fs.o(.text+0x3f3aa): In function `prepare_error_buf': : undefined reference to `strchr' make: *** [vmlinux] Error 1
Filip Lyncker schrieb:
Bist Du sicher? Ich schaetze eher, als Modul compiliert es durch, aber depmod wird Dir nach der Installation des Moduls dann "unresolved symbols" melden. Laden laesst sich das Modul dann auch nicht. Sieht fuer mich aus wie eine fehlerhafte Kernelkonfiguration oder ein unsauberer Kernel-Tree. Wuerde mit einem "make distclean" das Verzeichnis mit den Kernel- quellen saeubern, eine funktionierende Konfiguration des SuSE-Kernels als Grundlage hernehmen und dann Deine Aende- rungen daran machen. Das sollte hoffentlich besser funktio- nieren. Wenn Du ReiserFS zum Booten brauchst, kannst Du es natuerlich auch in die initrd aufnehmen - aber wie schon ge- sagt, solange es "unresolved symbols" gibt, wird Dir das nicht helfen... CU, Th. PS: Fuer Literaturhinweise, siehe andere Mail.
Thomas Hertweck schrieb:
hab ich gemacht, jetzt laesst es sich auch kompilieren und starten , ich muss da wohl irgendwas rausgenommen haben , das dem reiserfs modul nicht gefallen hat ! ich habe jetzt den suse kernel vmlinz.config exakt so belassen wie vorgegenben , dennoch kriege ich ihn nicht zum laufen unmittelbar nach dem strart kommt die meldung : code: Bad EIP value Kernel Panic : Attempt to kill init! das wars dann ... dazu eine idee?? gruesse Filip
Thomas Hertweck schrieb:
Schalte den Framebuffer ab, Bootparameter "vga=normal". Dazu evtl. noch "splash=no". Schau mal, ob es dann geht.
Nein geht immernochnicht ... es liegt offensichtlich am folgenden Teil : Linux NET4.0 for Linux2.4 Initalising RT netlink socket Unable to handle kernel NULL pointer dereference at virtual adress 00000000 printing eip: 000000000 *pde = 00000000 Oops: 0000 2.4.20-4GB #24 SDat Nov 1 14:13 CPU: 0 EIP: 0010 00000000 Not tainted EFLAGS: 00010282 und so weiter zum schluss dann eben Bad EIP VALUE Kernel Panic: Atteomted to kill init! ich frage mich was diese NET 4.0 for Linux2.4 ist und was man da falsch einstellen oder konfigurieren kann ! Gruesse Filip
Filip Lyncker schrieb:
Das ist ein Kernel-Oops, quasi ein Segmentation Fault beim Kernel. Dereferenziert der Linux Kernel einen ungueltigen Pointer, so wird das eben nicht Segmentation Fault, sondern schlicht "Oops" genannt. Ein Oops ist also ein Hinweis auf einen Kernel Bug. Ein Oops kann einen Kernel Panic verursachen, wenn der Fehler in einem lebens- wichtigen Teil des Kernel-Codes auftritt. Tritt der Fehler nur in einem Geraetetreiber auf, so wird es vermutlich nicht zu einem Kernel Panic kommen... Wenn Du booten koenntest, dann koenntest Du den Oops durch ksymoops jagen, um eine einigermassen lesbare Fehlermeldung zu bekommen - aber so weit kommst Du ja leider gar nicht. So etwas wie bei Dir hatte ich noch nie - sorry, da kann ich aus der Ferne auch nicht mehr helfen. Da muesste ich selbst erst einmal ein wenig am System rumspielen, um mehr in Erfahrung zu bringen... Vielleicht weiss ja jemand anderes mehr. CU, Th.
Hallo, Am Sun, 02 Nov 2003, Filip Lyncker schrieb:
Zeig das "und so weiter" mal her! Da findet sich i.d.R. ein Hinweis auf das ausloesende... -dnh -- 83: professionelle Arbeit echo "TEST" != "TEST" (Marcus Herbert)
----- Original Message ----- From: "Filip Lyncker" <lyncker@clubtracks.de> To: <suse-linux@suse.com> Sent: Saturday, November 01, 2003 1:04 PM Subject: Suse 8.2 : Wieso kann ich ReiserFs nicht in den Kernel kompilieren ??
Das ist übrignes die exakte Fehlermeldung : ld -m elf_i386 -T /usr/src/linux-2.4.20.SuSE/arch/i386/vmlinux.lds -e stext --warn-common arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o init/version.o init/do_mounts.o \ --start-group \ arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \ drivers/cpufreq/cpufreq.o drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/char/drm/drm.o drivers/net/fc/fc.o drivers/net/wan/wan.o drivers/cdrom/driver.o drivers/pci/driver.o drivers/net/pcmcia/pcmcia_net.o drivers/net/wireless/wireless_net.o drivers/video/video.o drivers/media/media.o drivers/input/inputdrv.o drivers/i2c/busses/i2c-busses.o drivers/i2c/chips/i2c-chips.o \ net/network.o \ abi/abi.o \ /usr/src/linux-2.4.20.SuSE/arch/i386/lib/lib.a /usr/src/linux-2.4.20.SuSE/lib/lib.a /usr/src/linux-2.4.20.SuSE/arch/i386/lib/lib.a \ --end-group \ -o vmlinux fs/fs.o(.text+0x3f3aa): In function `prepare_error_buf': : undefined reference to `strchr' make: *** [vmlinux] Error 1
Filip Lyncker schrieb:
Bist Du sicher? Ich schaetze eher, als Modul compiliert es durch, aber depmod wird Dir nach der Installation des Moduls dann "unresolved symbols" melden. Laden laesst sich das Modul dann auch nicht. Sieht fuer mich aus wie eine fehlerhafte Kernelkonfiguration oder ein unsauberer Kernel-Tree. Wuerde mit einem "make distclean" das Verzeichnis mit den Kernel- quellen saeubern, eine funktionierende Konfiguration des SuSE-Kernels als Grundlage hernehmen und dann Deine Aende- rungen daran machen. Das sollte hoffentlich besser funktio- nieren. Wenn Du ReiserFS zum Booten brauchst, kannst Du es natuerlich auch in die initrd aufnehmen - aber wie schon ge- sagt, solange es "unresolved symbols" gibt, wird Dir das nicht helfen... CU, Th. PS: Fuer Literaturhinweise, siehe andere Mail.
Thomas Hertweck schrieb:
hab ich gemacht, jetzt laesst es sich auch kompilieren und starten , ich muss da wohl irgendwas rausgenommen haben , das dem reiserfs modul nicht gefallen hat ! ich habe jetzt den suse kernel vmlinz.config exakt so belassen wie vorgegenben , dennoch kriege ich ihn nicht zum laufen unmittelbar nach dem strart kommt die meldung : code: Bad EIP value Kernel Panic : Attempt to kill init! das wars dann ... dazu eine idee?? gruesse Filip
Thomas Hertweck schrieb:
Schalte den Framebuffer ab, Bootparameter "vga=normal". Dazu evtl. noch "splash=no". Schau mal, ob es dann geht.
Nein geht immernochnicht ... es liegt offensichtlich am folgenden Teil : Linux NET4.0 for Linux2.4 Initalising RT netlink socket Unable to handle kernel NULL pointer dereference at virtual adress 00000000 printing eip: 000000000 *pde = 00000000 Oops: 0000 2.4.20-4GB #24 SDat Nov 1 14:13 CPU: 0 EIP: 0010 00000000 Not tainted EFLAGS: 00010282 und so weiter zum schluss dann eben Bad EIP VALUE Kernel Panic: Atteomted to kill init! ich frage mich was diese NET 4.0 for Linux2.4 ist und was man da falsch einstellen oder konfigurieren kann ! Gruesse Filip
Filip Lyncker schrieb:
Das ist ein Kernel-Oops, quasi ein Segmentation Fault beim Kernel. Dereferenziert der Linux Kernel einen ungueltigen Pointer, so wird das eben nicht Segmentation Fault, sondern schlicht "Oops" genannt. Ein Oops ist also ein Hinweis auf einen Kernel Bug. Ein Oops kann einen Kernel Panic verursachen, wenn der Fehler in einem lebens- wichtigen Teil des Kernel-Codes auftritt. Tritt der Fehler nur in einem Geraetetreiber auf, so wird es vermutlich nicht zu einem Kernel Panic kommen... Wenn Du booten koenntest, dann koenntest Du den Oops durch ksymoops jagen, um eine einigermassen lesbare Fehlermeldung zu bekommen - aber so weit kommst Du ja leider gar nicht. So etwas wie bei Dir hatte ich noch nie - sorry, da kann ich aus der Ferne auch nicht mehr helfen. Da muesste ich selbst erst einmal ein wenig am System rumspielen, um mehr in Erfahrung zu bringen... Vielleicht weiss ja jemand anderes mehr. CU, Th.
participants (3)
-
David Haller
-
Filip Lyncker
-
Thomas Hertweck