Mailing List Archive

pxelinux hang: problem freeing memory?
trying to set up a IBM 4500R with pxelinux 1.67 with an Intel eepro(ish)
NIC. Got DHCP (ISC 2.0) and atftpd working. pxelinux downloads the boot.msg,
kernel and initrd, but when it tries to load the kernel we get:

boot:
Loading 7.1/vmlinuz.............
Loading 7.1/initrd.img..............
ready.
Failed to free base memory, sorry...
[system hangs]

I tried enabling debugging in pxelinux.asm, but that provided no further
debugging output. Based on information on the website, we saw that freeing
memory was a relatively recent addition to the codebase, so we tried version
1.64, and that just hung with the "ready." prompt.

This is our pxelinux.cfg/default file. We tried many permutations of the
file with various append options, but all ended with the same result as
above. This is the simplest iteration with no boot menu, and very minimal
kernel options:

default vmlinuz

label vmlinuz
kernel vmlinuz
append initrd=initrd.img

label local
localboot 0

This is the inital boot screen before it loads the kernel and hangs:

Intel(R) Boot Agent Version 3.0.03
Copyright (C) 1997-2000, Intel Corporation

CLIENT MAC ADDR: 00 03 47 78 59 3A GUID:
00000000-0000-0000-0000-000000000000
CLIENT IP: 10.28.34.158 MASK: 255.255.252.0 DHCP IP: 10.28.33.136
GATEWAY IP: 10.28.32.254

PXELINUX 1.67 2002-02-03 Copyright (C) 1994-2001 H. Peter Anvin
UNDI data segment at: 00096E40
UNDI data segment size: 4D30
UNDI code segment at: 0009BB70
UNDI code segment size: 1F40
PXE entry point found (we hope) at 9BB7:0106
My IP address seems to be 0A1C229E 10.28.34.158
ip=10.28.34.158:10.28.33.136:10.28.32.254:255.255.252.0
TFTP prefix: /tftpboot/
Trying to load: pxelinux.cfg/0A1C229
[.etc, etc, eventually it loads the default file which points it at boot.msg,
vmlinuz, initrd]

please tell me I overlooked something silly in the documentation or am doing
something else foolish :)

G.

--
greg notch
notch@av.com
http://www.altavista.com - smart is beautiful
BF7C EC14 D458 D6EA D8DD A30F 1A24 1A3F DBCF BAD3
pxelinux hang: problem freeing memory? [ In reply to ]
Hi,

"Greg Notch" <notch@av.com> schrieb am 04.02.02:
> trying to set up a IBM 4500R with pxelinux 1.67 with an Intel eepro(ish)
> NIC. Got DHCP (ISC 2.0) and atftpd working. pxelinux downloads the boot.msg,
> kernel and initrd, but when it tries to load the kernel we get:
>
> boot:
> Loading 7.1/vmlinuz.............
> Loading 7.1/initrd.img..............
> ready.
> Failed to free base memory, sorry...
> [system hangs]

The 'Failed to free base memory'-Message is quite usual. There's
some PXE function to free the used memory, but on almost all
boards this doesn't work. After this control is handed over to
the just loaded kernel image, so the next thing that usually
follows here is the first message from the kernel: 'uncompressing ...'.

Which kernel version do you use? Could you try to get some recent 2.4
kernel? Does it work (i.e. does the kernel boot - it won't work without the initrd I suspect ...) without the initrd? Where do these
kernel and initrd images come from? Which kernel version is this?
From the name it seems to be some 7.1 version (Suse? RedHat?).

Regards,

Josef

______________________________________________________________________________
Die schönsten Ski-Regionen der Alpen - jetzt bei Ferienklick.de
http://ferienklick.de/ski/?PP=2-5-100-105-38
pxelinux hang: problem freeing memory? [ In reply to ]
> The 'Failed to free base memory'-Message is quite usual. There's
> some PXE function to free the used memory, but on almost all
> boards this doesn't work. After this control is handed over to
> the just loaded kernel image, so the next thing that usually
> follows here is the first message from the kernel: 'uncompressing ...'.

nope, kernel doesnt appear to load at all.

> Which kernel version do you use? Could you try to get some recent 2.4
> kernel? Does it work (i.e. does the kernel boot - it won't work without
the initrd I suspect...) without the initrd? Where do these
> kernel and initrd images come from? Which kernel version is this?
> From the name it seems to be some 7.1 version (Suse? RedHat?).

we tried several different kernels and initrds, some homebrew, some from the
pxelinux directory on the redhat 7.1 disc, others from the kickstart
distributions, etc. All were based on RedHat 7.1 distributions. All had the
same results.

any ideas? i think i might try the EtherBoot stuff and see if I can't make
that work.

G.

--
greg notch
notch@av.com
http://www.altavista.com - smart is beautiful
BF7C EC14 D458 D6EA D8DD A30F 1A24 1A3F DBCF BAD3
pxelinux hang: problem freeing memory? [ In reply to ]
Greg Notch wrote:

>
> we tried several different kernels and initrds, some homebrew, some from the
> pxelinux directory on the redhat 7.1 disc, others from the kickstart
> distributions, etc. All were based on RedHat 7.1 distributions. All had the
> same results.
>


RedHat 7.1 uses a 2.2 kernel. Please try a 2.2.20, or a 2.4 kernel.
2.2.x for x < 20 has a problem booting on systems with large EBDAs, which
include many PXE stacks.

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
we are using a 2.4 kernel. does it need to be more recent than 2.4.2?

we have also tried homebrew 2.4 kernels w/ xfs, same deal.

10|root on linux-admin1[/tftpboot]#strings vmlinuz | grep 2.4
2.4.2-2BOOT (root@porky.devel.redhat.com) #1 Sun Apr 8 18:24:33 EDT 2001
/usr/src/bs/BUILD/kernel-2.4.2/linux/include/linux/mount.h

thanks for the help!

G.

--
greg notch
notch@av.com
http://www.altavista.com - smart is beautiful
BF7C EC14 D458 D6EA D8DD A30F 1A24 1A3F DBCF BAD3

-----Original Message-----
From: H. Peter Anvin [mailto:hpa@zytor.com]
Sent: Monday, February 04, 2002 7:32 PM
To: Greg Notch
Cc: Josef Siemes; syslinux@zytor.com; Greg Connor
Subject: Re: [syslinux] pxelinux hang: problem freeing memory?


Greg Notch wrote:

>
> we tried several different kernels and initrds, some homebrew, some from
the
> pxelinux directory on the redhat 7.1 disc, others from the kickstart
> distributions, etc. All were based on RedHat 7.1 distributions. All had
the
> same results.
>


RedHat 7.1 uses a 2.2 kernel. Please try a 2.2.20, or a 2.4 kernel.
2.2.x for x < 20 has a problem booting on systems with large EBDAs, which
include many PXE stacks.

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
Greg Notch wrote:

> we are using a 2.4 kernel. does it need to be more recent than 2.4.2?
>
> we have also tried homebrew 2.4 kernels w/ xfs, same deal.
>
> 10|root on linux-admin1[/tftpboot]#strings vmlinuz | grep 2.4
> 2.4.2-2BOOT (root@porky.devel.redhat.com) #1 Sun Apr 8 18:24:33 EDT 2001
> /usr/src/bs/BUILD/kernel-2.4.2/linux/include/linux/mount.h
>
> thanks for the help!
>


2.4.2 *should* be OK, although it would be useful to see if you could try
it with a 2.4.17 kernel too.

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
just tried it with a 2.4.16 kernel, no dice.

#strings vmlinuz-lammy18 | grep 2.4
2.4.16-lammy18 (root@lammy.notch.org) #1 Thu Jan 24 20:01:20 EST 2002

any ideas on the root cause? it looks to me like the .cant_free function
never returns, which would explain why it never loads the kernel:

.ok:
mov [BIOS_fbm],ax
ret

.cant_free:
mov si,cant_free_msg
jmp writestr


thanks!

G.

--
greg notch
notch@av.com
http://www.altavista.com - smart is beautiful
BF7C EC14 D458 D6EA D8DD A30F 1A24 1A3F DBCF BAD3

-----Original Message-----
From: H. Peter Anvin [mailto:hpa@zytor.com]
Sent: Monday, February 04, 2002 7:42 PM
To: Greg Notch
Cc: Josef Siemes; syslinux@zytor.com; Greg Connor
Subject: Re: [syslinux] pxelinux hang: problem freeing memory?


Greg Notch wrote:

> we are using a 2.4 kernel. does it need to be more recent than 2.4.2?
>
> we have also tried homebrew 2.4 kernels w/ xfs, same deal.
>
> 10|root on linux-admin1[/tftpboot]#strings vmlinuz | grep 2.4
> 2.4.2-2BOOT (root@porky.devel.redhat.com) #1 Sun Apr 8 18:24:33 EDT 2001
> /usr/src/bs/BUILD/kernel-2.4.2/linux/include/linux/mount.h
>
> thanks for the help!
>


2.4.2 *should* be OK, although it would be useful to see if you could try
it with a 2.4.17 kernel too.

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
Greg Notch wrote:

> just tried it with a 2.4.16 kernel, no dice.
>
> #strings vmlinuz-lammy18 | grep 2.4
> 2.4.16-lammy18 (root@lammy.notch.org) #1 Thu Jan 24 20:01:20 EST 2002
>
> any ideas on the root cause? it looks to me like the .cant_free function
> never returns, which would explain why it never loads the kernel:
>
> .ok:
> mov [BIOS_fbm],ax
> ret
>
> .cant_free:
> mov si,cant_free_msg
> jmp writestr
>


No, it tailcalls writestr which returns to the caller.

The root cause is probably something having to do with your system. Does
booting from media other than the network (floppy, CD-ROM, etc) work?

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
thanks for all the help guys.

booting from cdrom and disk are fine. its just the pxeboot that hangs.

G.

--
greg notch
notch@av.com
http://www.altavista.com - smart is beautiful
BF7C EC14 D458 D6EA D8DD A30F 1A24 1A3F DBCF BAD3

-----Original Message-----
From: H. Peter Anvin [mailto:hpa@zytor.com]
Sent: Monday, February 04, 2002 7:56 PM
To: Greg Notch
Cc: Josef Siemes; syslinux@zytor.com; Greg Connor
Subject: Re: [syslinux] pxelinux hang: problem freeing memory?


Greg Notch wrote:

> just tried it with a 2.4.16 kernel, no dice.
>
> #strings vmlinuz-lammy18 | grep 2.4
> 2.4.16-lammy18 (root@lammy.notch.org) #1 Thu Jan 24 20:01:20 EST 2002
>
> any ideas on the root cause? it looks to me like the .cant_free function
> never returns, which would explain why it never loads the kernel:
>
> .ok:
> mov [BIOS_fbm],ax
> ret
>
> .cant_free:
> mov si,cant_free_msg
> jmp writestr
>


No, it tailcalls writestr which returns to the caller.

The root cause is probably something having to do with your system. Does
booting from media other than the network (floppy, CD-ROM, etc) work?

-hpa
pxelinux hang: problem freeing memory? [ In reply to ]
Greg Notch wrote:

> thanks for all the help guys.
>
> booting from cdrom and disk are fine. its just the pxeboot that hangs.
>


Hmmm... we're getting into territory where it's hard to do further
debugging without hardware access. What is the *exact* hardware and
firmware you're using?

-hpa