Forum: Mikrocontroller und Digitale Elektronik Kernel 2.6.27.10+buildroot+AT91RM9200: INIT stirbt


von Ulrich P. (uprinz)


Lesenswert?

Hi!

Ich habe auf einem AT91RM9200 den Kernel 2.6.27.10 zum Laufen gebracht. 
Alle bislang über eine eigene board.c aktivierte Hardware läuft, LEDs, 
Netzwerk...
Booten über NFS und JFFS2 funktionieren... Bis hier:
1
Looking up port of RPC 100003/2 on 192.168.10.116
2
Looking up port of RPC 100005/1 on 192.168.10.116
3
VFS: Mounted root (nfs filesystem).
4
Freeing init memory: 128K
5
Kernel panic - not syncing: Attempted to kill init!
Ich habe ein hello_world.c geschrieben und statisch gelinkt. Dieses habe 
ich dann per Kernel-Kommandoszeile init=/bin/hello aufgerufen. Das 
funktioniert.

Ich verwende buildroot und habe busybox nebst uclibc ebenso wie der 
Kernel über dieses System gebaut. Kernel und hello_world funktionieren. 
Aber entweder streiken uclibc oder busybox, oder beide.
Wenn ich das rootfs aus dem ELDK via NFS mounte, dann funktioniert der 
Start von busybox, auch mit meinem Kernel einwandfrei.

Ich habe das rootfs des ELDK und des buildroot mal parallel gemountet 
und kann keine der üblichen Verdächtigen entdecken. Die devices sind 
vollständig und auch die Dateien aus etc sind scheinbar ok. Lediglich 
ein Eintrag in der inittab, der ttyS0 auf 115200 initialisiert, war 
etwas blöde, da mein Serieller nur 9600 kann. Aber das hätte zu Unsinn 
oder keinen Ausgaben auf dem Terminal führen müssen, aber nicht zu 
obiger Fehlermeldung.

Ich wäre nun langsam echt über jeden Hinweis sehr erfreut, wie man 
einfachsten mit den Mitteln von buildroot, uclibc, kernel und busybox 
die Ursache dieses INIT-Sterbens aufklären kann.

danke schon mal!
Ulrich

von Ulrich P. (uprinz)


Lesenswert?

Ich habe mal versucht ein par printk() in die init.c von buildroot zu 
platzieren, aber diese werden mit implicit declaration vom compiler 
abgelehnt. Ein #include <linux/kernel.h> hat auch nix genützt, denn 
darin ist kein printk definiert.
Was nun? Wie komm ich da nur weiter....

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.