Hello, I have been working in the linux kernel 2.4.3 which was ported for mips32 ISA. I cant understand certain things. The variable max_low_pfn is used to compare the initrd_end. I can see the max_low_pfn being zero and as a result the phys_to_virt(PFN_PHYS(max_low_pfn)) is zero. Hence in the setup_arch, the initrd comparision fails and the initrd is disabled. I get the following messages, Initial ramdisk at: 0x8010e000 (1916920 bytes) initrd extends beyond end of memory (0x802e1ff8 > 0x80000000) disabling initrd I dont know how this variable gets a value. Also I get some messages like the below in the bootmem.c. while accessing the reserve_bootmem function. Is this a kernel BUG or is it something with my hardware? kernel BUG at bootmem.c:84! kernel BUG at bootmem.c:87! kernel BUG at bootmem.c:181! Any help would be greatly appreciated. regards, Balaji