[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[2.6] "invalid ELF header"/Warnings bei Kernel-Kompilierung



Hallo zusammen,

bei der Kompilierung von 2.6.4 auf einer Woody 3.0r2 erhalte ich im Treiber
für (unter anderem) ICP-Vortex-SCSI-Raid Controller folgende Warnings:

drivers/scsi/gdth.c: In function `gdth_sync_event':
drivers/scsi/gdth.c:3677: warning: cast from pointer to integer of different
size
drivers/scsi/gdth.c: At top level:
drivers/scsi/gdth.c:880: warning: `gdthtable' defined but not used

Da die Kompilierung bei 2.6.x so schön übersichtlich ist, fiel mir außerdem
aus, dass alles andere ohne Warnings kompiliert wurde. ;o)

Die gleichen Warnings (bis auf leichte Verschiebungen bei den Zeilennummern)
erhalte ich auch bei 2.6.1 und 2.6.2 (2.6.3 habe ich wegen bekannter
Probleme mit dem e1000 Gigabit-Netzwerkkartentreiber gar nicht erst ausprobiert).

Boote ich mit diesem Kernel, bricht der Bootvorgang mit "Kernel panic: No
init found. Try passing init= option to kernel." ab.

Der Controller wird vorher erkannt:

GDT: Storage Raid Controller Driver. Version: 2.08
GDT: Found 1 PCI Storage Raid Controllers
GDT CTR0: Configuring GDT-PCI HA at 3/5 IRQ 22
scsi2 : GDT8514RZ
  Vendor: ICP      Model: Host Drive  #00   Rev:
  Type:   Direct-Access                      ANSI SCSI revision: 02
Attached scsi disk sda at scsi2, channel 0, id 0, lun 0
SCSI device sda: 143492580 512-byte hdwr sectors (73468 MB)
Partition check:
 sda: sda1 sda2 sda3 sda4

Dann erhalte ich die Meldung, dass das root-Dateisystem erfolgreich
eingebunden wurde:

VFS: Mounted root (ext3 filesystem) readonly.

Dann passiert es, ich erhalte zweimal folgende Meldung:

/sbin/modprobe: error while loading shared libraries: /lib/libc.so.6:
invalied ELF header.

gefolgt von der Kernel panic.

2.4.25 bootete hingegen fehlerfrei, auch unterscheiden sich die
Einstellungen in /etc/lilo.conf nicht. Ferner bin ich der Meinung, dass ich die
"üblichen" Fehlerquellen für obige Kernel panic bereits größtenteil erfolglos getestet
habe.

Die Kernel-Sourcen kommen frisch von ftp.de.kernel.org, eingespielte
Backports von www.backports.org sind module-init-tools, procps, und e2fsprogs, womit
ich auf einem ähnlichen System (allerdings ohne einen solchen
RAID-Controller) 2.6.4 auch booten konnte.

Der Treiber sowie EXT3-Support sind selbstredend fest einkompiliert, nicht
als Modul.

Kompiliere ich den Kernel ohne Modul-Support, kommt ebenfalls die Kernel
panic, allerdings fallen die /sbin/modprobe-Fehler weg. Auch durch die
Verwendung der Backports von Adrian Bunk anstelle der von www.backports.org komm es
zum beschriebenen Fehler. Ebenfalls habe ich die libc6 neu installiert, ohne
Änderungen. ldconfig lief auch, sieht alles IMHO gut aus.

Hardwareinformationen: Motherboard: Asus PU-DLS, Dual Xeon 2.8 GHz, 6 GB
RAM, 6 GB Swap (3x2 Partitionen), ICP-Vortex-Controller GDT8514RZ mit vier
Platten als RAID-5.

/etc/fstab:

/dev/sda4	/		ext3	errors=remount-ro	0	1
/dev/sda1	none		swap	sw			0	0
/dev/sda2	none		swap	sw			0	0
/dev/sda3	none		swap	sw			0	0
proc		/proc		proc	defaults		0	0
/dev/fd0	/floppy		auto	user,noauto		0	0

Fragen:

- Wie wahrscheinlich ist es, dass ich wegen der Warnings nicht booten kann?
Ich kenne mich leider weder mit C noch Kernelprogrammierung gut genug aus,
kann mir aber ausmalen, dass ein falscher Aufruf der angemeckerten Funktion
"suboptimal" sein kann.

- Wo könnte der Fehler sonst noch liegen? Habe ich bei der
Kernelkonfiguration evtl. wichtige Dinge übersehen (will ungern die .config posten, ist eh
schon lang genug...)? Evtl. Probleme mit den Backports?

- Hat noch jemand anderes Probleme mit so einem Controller und 2.6.4? ;o)

Falls es nicht an fehlerhaftem Treibercode liegt (was ich doch eher für
unwahrscheinlich halte), so habe ich wahrscheinlich irgendwo eine winzige
Kleinigkeit übersehen (was ich für deutlich wahrscheinlicher halte)...

TIA,

   Carsten

-- 
+++ NEU bei GMX und erstmalig in Deutschland: TÜV-geprüfter Virenschutz +++
100% Virenerkennung nach Wildlist. Infos: http://www.gmx.net/virenschutz



Reply to: