yaboot and netboot

Chandra Seetharaman sekharan at us.ibm.com
Tue Aug 26 15:35:29 EST 2008


Hi All,

I am trying to add support for ipv6 in yaboot. While testing found that
I have to get the ciaddr, siaddr etc., appended to the device name for
ipv6 . If I do not do that the boot path ends up being just
network_device:filename, which doesn't lead to a resolution.

While looking at the code found that the behavior is same for ipv4 also.
i.e the siaddr,ciaddr,giaddr,subnet-mask that I give when I invoke the
boot is not passed on to the next step (to get yaboot.conf).

Am I missing something ? Shouldn't yaboot be using the value I provided
for subsequent steps ?

Here is an example (with 1.3.14 and DEBUG set to 1):
-------------------------
0 > boot network1:bootp,10.0.0.102,yaboot.test,10.0.0.241,10.0.0.1,5,5,255.255.255.0 




TFTP BOOT ---------------------------------------------------
Server IP.....................10.0.0.102
Client IP.....................10.0.0.241
Gateway IP....................10.0.0.1
Subnet Mask...................255.255.255.0
( 1  ) Filename.................yaboot.test
TFTP Retries..................5 
Block Size....................512 


FILE        : yaboot.test
BLKSIZE     : 512 
TFTP-RETRIES: 5 
FINAL PACKET COUNT = 859 
FINAL FILE SIZE = 439755  BYTES

Elapsed time since release of system processors: 1 mins 19 secs

Adding OF methods...
    prom_init - OF interface initialized.
    yaboot_start - Malloc buffer allocated at 00300000 (1048576 bytes)
    yaboot_start - reloc_offset :  0         (should be 0)
    yaboot_start - test_bss     :  0         (should be 0)
    yaboot_start - test_data    :  0         (should be 0)
    yaboot_start - &test_data   :  00220454
    yaboot_start - &test_bss    :  00220458
    yaboot_start - linked at    :  0x00200000
    yaboot_start - Running on _machine = 4
    yaboot_main - /chosen/bootargs = 
    yaboot_main - /chosen/bootpath
= /lhea at 23c00100/ethernet at 23e00100:bootp,10.0.0.102,yaboot.test,10.0.0.241,10.0.0.1,5,5,255.255.255.0
    netdev_path_to_filename - path
= /lhea at 23c00100/ethernet at 23e00100:bootp,10.0.0.102,yaboot.test,10.0.0.241,10.0.0.1,5,5,255.255.255.0
    netdev_path_to_filename - filename = yaboot.test
    netdev_path_to_dev - path
= /lhea at 23c00100/ethernet at 23e00100:bootp,10.0.0.102,yaboot.test,10.0.0.241,10.0.0.1,5,5,255.255.255.0
    yaboot_main - After parse_device_path:
dev=/lhea at 23c00100/ethernet at 23e00100:, part=-1, file=yaboot.test
    yaboot_main - After path kludgeup:
dev=/lhea at 23c00100/ethernet at 23e00100:, part=-1, file=/etc/yaboot.conf
Try to netboot
    open_file - dev_path = /lhea at 23c00100/ethernet at 23e00100:
file_name = /etc/00-
partition = -1
    open_file - device is a network device
--> of_net_open
    of_net_open - dev=/lhea at 23c00100/ethernet at 23e00100:, part=0x00000000
(-1), file_name=/etc/00-
    of_net_open - Opening: "/lhea at 23c00100/ethernet at 23e00100:,\etc\00-"
-----------------------

and it hangs there for a while and fails.

Shouldn't the dev which is passed to of_net_open have all the parameters
provided by the user ?

Can somebody clarify ?

regards,

chandra
 




More information about the Yaboot-users mailing list