[Fwd: Re: [syslinux] etherboot 5.3.14 and pxelinux keyboard problem]

Quinn plattel at tiscali.dk
Sat Sep 10 01:24:37 PDT 2005


H. Peter Anvin wrote:

> Quinn wrote:
>
>>
>> Does this information give you any help at all to what is happening 
>> in the pxelinux code on a 486 machine?
>>
>
> Looking at the diff, my only guess is stack corruption.  Try changing:
>
> %assign USE_PXE_PROVIDED_STACK 1        ; Use stack provided by PXE?
>
> ... to 0 and see if it helps (it probably won't.)
>
>     -hpa
>
I though of that too during my study of pxelinux.asm.  Unfortunately 
that didn't seem to have any effect during my tests.  With the keyboard 
diff in place and USE_PXE_PROVIDED_STACK 0, the hang occurs at "Loading 
memdisk..".  With the keyboard diff taken out and USE_PXE_PROVIDED_STACK 
0, the keyboard locks up at the boot prompt.

Btw, I wrote in my previous post "Loading memtest.." That was a typo, it 
should be "Loading memdisk.."

Here is my summary of lockups and the study of the code:
The keyboard lockup seems to do something with the arp-check-when-idle 
procedure in pxelinux.asm (version 2.08-pre7).
The "Loading " hang seems to occur during runkernel.inc's parsing 
command line procedure (version 3.05).
The "Loading memdisk.." hang seems to occur during runkernel.inc's 
moving of the kernel (memdisk) to high memory (above 1MB).

A bit puzzling with runkernel.inc.  If you say that the code is used 
commonly with the linux kernel, then why is it that the linux kernel 
loads successfully on a 486?

I started debugging highmem.inc.  The 486 machine has 32 MB of physical 
ram.  HighMemSize reports 15597568 bytes.  This sounds like the old 
"Memory hole at 15-16MB" BIOS feature.  I checked the bios and it did 
not have a way of turning it on or off.  I assume the hole is enabled 
since HighMemSize reports that size.

Also checked how the memory is detected.  Memtest-86 reports e820-std 
and reports 32MB of RAM but highmem.inc reports ah88 standard and 
reports only 15MB of RAM.

Quinn




More information about the Syslinux mailing list