<br><br><div><span class="gmail_quote">On 3/17/07, <b class="gmail_sendername">Geoff Levand</b> <<a href="mailto:geoffrey.levand@am.sony.com">geoffrey.levand@am.sony.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Aegis Lin wrote:<br>> On 3/16/07, Geoff Levand <<a href="mailto:geoffrey.levand@am.sony.com">geoffrey.levand@am.sony.com</a>> wrote:<br>>><br>>> In my testing I found that it is because for some reason (not dig yet) the
<br>> current git kernel<br>> (2.6.21-rc1) for PS3 won't take command lines from kboot, so initrd will<br>> never have a chance<br>> to be loaded. I've verified this on FC5 and YDL5, for kboot (otheros.bld
)<br>> provided by both<br>> Sony and YDL.<br><br>See the line LOAD_REG_IMMEDIATE(r3, dt_blob_start) here:<br><br> <a href="http://git.kernel.org/?p=linux/kernel/git/geoff/ps3-linux-patches.git;a=blob_plain;f=ps3-hacks/ps3-no-bootwrapper-hack.diff">
http://git.kernel.org/?p=linux/kernel/git/geoff/ps3-linux-patches.git;a=blob_plain;f=ps3-hacks/ps3-no-bootwrapper-hack.diff</a></blockquote><div><br>Ok, I think I got the idea... <br></div>(And might need some time to pick up the gap between
2.6.16 and git-current)<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">> If the default kernel config is used, the kernel will be compiled with a
<br>> default command<br>> line which only assigns "root" and "videomode". FC5 can still be booted<br>> normally because<br>> (root):/dev (the real directory, not the mounted tmpfs one) really contains
<br>> the dev nodes<br>> needed during boot, while for YDL5, /dev is in fact empty. After booting,<br>> anyway udev will<br>> take control...<br><br>That makes sense. I needed to add the nodes when I switched to FC6. So
<br>I guess the distro's initrd has those nodes? I never checked into it.<br><br>-Geoff</blockquote><div>I've checked initrd generated by mkinitrd for both FC5 and YDL5. Slight differences, but similar.<br><br>Ini init(), before init_post() if initrd has been mounted, /init will be executed, which is usually a simple nash
<br>shell script. In that script tmpfs will be mounted onto /dev and sevral important nodes (including<br>/dev/console) will be created. So if during boot the chance is missed and the real /dev is empty,<br>the open attempt to /dev/console will surely fail in init_post().
<br><br></div></div>-- <br><i>Yet another coder currently roaming in Japan...</i><br>Yu-Te Aegis Lin, aka AirL<br>alternative email: ydlin (at) <a href="http://ntu.edu.tw">ntu.edu.tw</a>