Week -4: Debug hardware problem
Before Apr. 22th
Debug boot crash problem
I had problem for boot gPXE with my testing computer. It keeps reboot(crash) right after gPXE relocats itself to high memory location.
I've traced partial codes of src/arch/i386/prefix/*prefix.S
And dumped the e820 memory maps as stefanha suggestes.
The addresses all looks normal, no overlapps, and the gPXE loading
address seems reasonable.
Dumped message
NVIDIA Boot Agent 215.0503 Copyright (C) 2001-2005 NVIDIA Corporation Copyright (C) 1997-2000 Intel Corporation CLIENT MAC ADDR: 00 15 F2 3A BE 48 GUID: 00501D51-548A-0D10-A3D8-AB7EEAB94556 CLIENT IP: 192.168.201.208 MASK: 255.255.255.0 DHCP IP: 192.168.201.186 GATEWAY IP: 192.168.201.186 PXE->EB: !PXE at 99AB:0080, entry point at 99AB:0E57 UNDI code segment 99AB:5BD3, data segment 98B3:0F80 (610-638kB) UNDI device is PCI 00:0A.0, type DIX+802.3 610kB free base memory after PXE unload Fetching system memory map FBMS base memory size 596 kB [0,95000) INT 15,e801 extended memory size 15360+64*32511=2096064 kB [100000,7fff0000) INT 15,e820 region [0,9f800) type 1 INT 15,e820 region [f0000,100000) type 2 INT 15,e820 region [fec00000,100000000) type 2 INT 15,e820 region [e0000000,f0000000) type 2 INT 15,e820 region [7fff3000,80000000) type 3 INT 15,e820 region [7fff0000,7fff3000) type 4 INT 15,e820 region [9f800,a0000) type 2 INT 15,e820 region [100000,7fff0000) type 1 Relocate: currently at [400000,435c98) ...need 35ca7 bytes for 16-byte alignment Considering [0,9f800) ...usable portion is [0,9f800) Considering [100000,7fff0000) ...end truncated to 7ff00000 (avoid ending in odd megabyte) ...usable portion is [100000,7ff00000) ...new best block found. Relocating from [400000,435c98) to [7feca360,7feffff8)
Solved with cleaning pin connectors
After about a week's struggle, I removed all DIMMs and add-on cards, and cleaned all pin connectors. Fount that it boots fine without any software patch.