Embedded Linux - boot z initramfs

Pavel Troller patrol na sinus.cz
Středa Březen 25 16:07:40 CET 2015


>> Samozřejmě ji tam mám zadanou :-(. Bez toho by se vůbec do toho jádra
>> nepřiložil. To, že tam je, vím - jádro má pořád svých 6.5M, zatímco bez
>> něj má 1.5M. Ale přesto, pokud je v jádře Block Layer, tak nefunguje :-(.
>
> Nebude tam nějaký bootovací skript, do kterého by bylo možné se podívat 
> nebo ho upravit? Mě se obecně osvědčilo přidat na začátek bashového skriptu 
> "set -x". Je ale možné, že tam bude nějaký ořezaný shell, který to nebude 
> podporovat.
>
> L.
Zdravím,
  ale ne, ten initramfs mám pod kontrolou - je můj, od A do Z :-). Coby /init
je tam shell (busybox), který, pokud se spustí, hodí prompt a je to. Jenže on
se NESPUSTÍ! V tom je ten celý problém. Když nedám do jádra Block Layer, tak
se spustí a vše je OK. Když tam Block Layer je, tak jako by tam nebyl žádný
initramfs, chce to bootovat rovnou z nějakého Block Device.
  Ještě jsem neuvedl, že chci, aby to bylo hezky nové a moderní, tak to jádro
je 4.0.0-RC3. Možná, že je to prostě nějaký bug :-(. Nezbývá než začít vkládat
debug "printky" (volání printk()) do míst, kudy to má běžet (v adresáři init
stromu jádra, soubory do_mount.c atd., abych přesně pochopil, co se tam
děje. Samotné koukání do zdrojáku mi to zatím dostatečně neosvětlilo.
  Naštěstí kompilační otočka včetně tftp downloadu a zkušebního bootu je tak
2 minuty, takže se to ještě dá...
  Zdraví Pavel


Další informace o konferenci Hw-list