VDX6740 boot arguments for primary and secondary firmware

We have a peculiar issue with 2 of our VDX 6740 switches. It appears that both the primary and the secondary firmware are loading from the same partition.

These are the internal bootvars from the uboot. I can't find a way of changing these. I assume these values are incorrect.
=> show_internal_bootvars
internal_multiGOS_bootargs=config-addr=0x3000000 p1-linux="root=/dev/sda1 rootfstype=ext4 quiet" p2-linux="root=/dev/sda1 rootfstype=ext4 quiet"
internal_multiGOS_bootcmd=loadenv 1;usb reset 0;calc_prt;run goscmd;loadenv 0;usb reset 0;calc_prt;run hvcmd_fast; setenv fastboot false; saveenv; reset

Freescale Hypervisor 0.8-004
Hypervisor command line: config-addr=0x3000000 p1-linux="root=/dev/sda1 rootfstype=ext4 quiet" p2-linux="root=/dev/sda1 rootfstype=ext4 quiet"
[0] malloc_init: using 31 MiB at 0x7e0e38b0 - 0x7fffffff
Brocade PB device tree:brocade,SILKWORM_PB
Got liodn 125
[0] assign_callback: device serial0 in serial0 not found
[0] assign_callback: device /hvcpld in fpga not found
USB: EHCI fail to halt

Static Qhead=0x4d60c0 Qhead list=0x4d6140 Qtd base=0x4d61c0

Static Qhead Align=[0] Qhead list Align=[0] Qtd base=[0]
Register 10011 NbrPorts 1
hv scanning bus for usb devices... 2 USB Device(s) found
[0] watchdog enabled with period 38
Hypervisor scanning bus for storage devices...
========Storage Device Details==========
Mfr=Generic, Product=Flash Card Reader, SerialNumber=000000225001
1 HV Storage Device(s) found
Init hypervisor timer init_timer:8
[1] watchdog enabled with period 38
[2] watchdog enabled with period 38
[3] watchdog enabled with period 38
[2] Virtual Storage thread=7e2600a8
[0] get_rpn: mem-range has discontiguity at guest address 0x68000000.

part_start 2 2

dev_name vs_attach_guest /vsmgr/vd@usb0/vda01 part_start 2 no_of_parts 2

[vs_attach_guest]vdisk->start 0x7737ff vdisk->size 0x773001

[vs_attach_guest]vdisk->start 0x7737ff vdisk->size 0x773001
Bootargs set for cpu = 2 guest p2-linux bootagrs = root=/dev/sda1 rootfstype=ext4 quiet


part_start 0 2

dev_name vs_attach_guest /vsmgr/vd@usb0/vda00 part_start 0 no_of_parts 2

[vs_attach_guest]vdisk->start 0x0 vdisk->size 0x773800

[vs_attach_guest]vdisk->start 0x0 vdisk->size 0x773800
Bootargs set for cpu = 0 guest p1-linux bootagrs = root=/dev/sda1 rootfstype=ext4 quiet

As you can notice from above, both the p2-linux and p1-linux run off /dev/sda1 partition. I have tried a full clean netinstall from USB and it didn't fix the issue. Is the issue because of incorrect uboot internal_bootvars? How do I make persistent changes to internal_bootvars?

1 reply

Hi Dhiru,

That p1/p2 I think refers to ACTIVE/STANDBY VMs running on VDX6740, the ones you can see in "show version" output. Additionally each VM has a primary and a secondary disk partitions (sda1 and sda2), which it can boot off. You can check the section on "Recovering the root password for Brocade VDX switches
" in NOS troubleshooting guide, which describes the procedure to modify bootenv variables and you could use the same to switch between sda1 and sda2 for boot.

Many thanks,