[Clfs-dev] Seeking help to boot PowerPC64-Multilib

John Frankish frankish at dubai.oilfield.slb.com
Sat Nov 15 01:19:40 PST 2008


At 02:01 15-11-08, you wrote:
>On Fri, Nov 14, 2008 at 06:53:00PM +0400, John Frankish wrote: > 
>Thanks for the suggestions - In the default ydl-6 configuration, 
>it > appears that there are 3 partitions - the boot partition, the 
>main > partition and the swap partition: > > # fdisk 
>-l >      Device 
>Boot      Start         End      Blocks   Id  System > 
>/dev/ps3da1   *           1          13      104391   83  Linux > 
>/dev/ps3da2              14        5664    45391657+  83  Linux > 
>/dev/ps3da3            5665        5729      522112+  82  Linux swap 
>/ > Solaris > > I created /clfs on the main partition - /dev/ps3da2. 
>Maybe /boot on > the main partition is somehow linked to /dev/ps3da1 
>(it's not a > symlink, but maybe a hard link)? I tried to modify 
>yaboot.conf to > boot from /clfs/boot, but it looks like it only 
>looks on /dev/ps3da1 > (partition=1). The yaboot.conf on the host 
>ydl-6 system looks like this: > > # yaboot.conf generated by 
>anaconda > boot=/dev/ps3da > init-message=Welcome to YDL!\nHit <TAB> 
>for boot options > partition=1 > timeout=80 > 
>install=/usr/lib/yaboot/yaboot > delay=5 > enablecdboot > 
>enableofboot > enablenetboot > nonvram > mntpoint=/boot/yaboot 
>^^^^^^^^^^^^^^^^^^^^^^^^ I've no idea what that line means, or does, 
>but it makes me wonder if ps3da1 is indeed mounted at /boot or at 
>/boot/yaboot. Oh, your fstab shows an ext3fs at /boot so I guess it 
>is indeed mounted there.  Unusual on ppc, but not outlandish. > 
>usemount > default=linux > > 
>image=/vmlinux-2.6.23-9.ydl6.1 >         label=linux > 
>read-only >         initrd=/initrd-2.6.23-9.ydl6.1.img > 
>append="video=ps3fb:mode:13 rhgb quiet root=LABEL=/" > > 
>image=/clfs/boot/clfskernel-2.6.27.4 >         label=clfs > 
>read-only >         init=/clfs/sbin/pre-init > 
>append="video=ps3fb:mode:13 rhgb quiet root=LABEL=/" > > Is there 
>any way to modify yaboot.conf to look on /dev/ps3da2 (whilst > still 
>maintaining the ydl boot capability) or do I somehow have to > link 
>/clfs/boot to /dev/ps3da1 - in case it helps, /etc/fstab is posted > 
>below > > Thanks > John > --- > 
>LABEL=/                 /                       ext3    defaults 
>    1 1 > 
>LABEL=/boot             /boot                   ext3    defaults 
>    1 2 > 
>spufs                   /spu                    spufs   defaults 
>    0 0 > 
>tmpfs                   /dev/shm                tmpfs   defaults 
>    0 0 > 
>devpts                  /dev/pts                devpts 
>gid=5,mode=620  0 0 > 
>sysfs                   /sys                    sysfs   defaults 
>    0 0 > 
>proc                    /proc                   proc    defaults 
>    0 0 > 
>LABEL=SWAP-ps3da3       swap                    swap    defaults 
>    0 0 What is the layout of /boot ?  Maybe you'll need to copy the 
>clfs kernel to it (space permitting, of course). In fact, the 
>/path/to/clfskernel needs to be how yaboot will find it at 
>runtime.  That means it probably has to to be on the same 
>partition.  On a mac, we can run 'ofpath /dev/sdX' to get the open 
>firmware path to an image on a different partition (section 12.4). 
>On a mac, yaboot.conf is copied to the apple_bootstrap partition by 
>ybin, and is read during the boot (bottom of Appendix E in the ppc64 
>book).  You quite clearly don't have this sort of partitioning. 
>Google found that booting on ps3 apparently used to need kboot, not 
>yaboot.  Unclear if that was just for the initial boot.  I wonder if 
>ydl's version of yaboot has been patched for the ps3 (check the 
>source rpms). ? 'man yaboot.conf' on your ydl system is probably the 
>best I can suggest.  Perhaps it specifically mentions the ps3 
>?  Maybe try 'ofpath /dev/ps3da2'

Thanks - after some more investigation, I found the following output 
from the mount command

/dev/ps3da2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/ps3da1 on /boot type ext3 (rw)
spufs on /spu type spufs (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

So it does indeed look like the /dev/ps3da1 partition is mounted as 
/boot on the /dev/ps3da2 partition.

I could see that I could do this prior to compiling/installing the 
kernel, which would install the clfs kernel alongside the ydl kernel 
in /boot - but I'm kind of lost as to how to set things up on reboot 
so that the clfs kernel loads (effectively from /dev/ps3da1) and 
/clfs/sbin/pre-init gets called from /dev/ps3da2 ??

John





More information about the Clfs-dev mailing list