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.