Netboot Mailing List (by thread)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Etherboot 4.5.5 released

Ken Yap writes:
| I have released Etherboot 4.5.5 at
| No, that is not a typo, this is a 4.5 release. The reason is Klaus
| Espenlaub just did a fantastic job of reorganisation, rewriting, bug
| fixing, and adding new features to Etherboot that I feel justified
| in starting a new series. 4.5 will be a development series leading to
| 4.6. The 4.4 series will not be updated anymore except to backport any
| critical bug fixes to 4.4. Hopefully within an iteration or two we can
| get all the major glitches out and go to 4.6. So if you have a stake in
| using Etherboot, please test this.
| I attach his extensive notes at the bottom, but I want to mention the
| major features:
| + Booting via NFS in addition to TFTP
| + Lance driver works for PCI Lance under VMware (could users with real
| PCI Lance NICs please test?)

I'll see if I can dig any up.  I finally got it to work under VMware
after turning off some options.  Also I had trouble with my DHCP reply
being to long.  I'll look into this later.  I ran into a couple 
glitches compiling on FreeBSD and I have included the simply patches at
the end.

I also had to use a newer gas & ld, whereas before we just used a newer
gas.  So I added:
  AS=          `echo ../../bin*/gas/as-new`
  LD32=          `echo ../../bin*/ld/ld-new`
in the Makefile file for the FreeBSD "port".  

I ran into a compiler issue with gcc 2.95.2 ie from gcc -v
	770z% gcc -v
	Using builtin specs.
	gcc version 2.95.2 19991024 (release)

It reported problems with the AX & BX registers.
                __asm__ __volatile__(
                        "call *%2"
                        : /* no outputs */
                        : "a" (0x2BADB002), "b" (&info.mbinfo), "g" (entry)
                        : "eax","ebx","ecx","edx","esi","edi","cc","memory");
               longjmp(jmp_bootmenu, 2);
So for now as a work-around I just delete the AX & BX register references.
               __asm__ __volatile__(
                       "call *%2"
                       : /* no outputs */
                       : "a" (0x2BADB002), "b" (&info.mbinfo), "g" (entry)
                       : "ecx","edx","esi","edi","cc","memory");
               longjmp(jmp_bootmenu, 2);

Linux version that compiles okay is 2.91.66
	[root@770z src]$ gcc -v
	Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs
	gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
	[root@770z src]$ 

So this is a quick once over and I was able to get it to build under FreeBSD
with my "port" that uses a newer gas & ld and it seemed to work close
to before.

Here's the simple patches.

*** Makefile.orig	Sat Mar 18 00:30:20 2000
--- Makefile	Sat Mar 18 19:46:12 2000
*** 166,171 ****
--- 169,175 ----
  PRLOADER=	bin/prloader.bin
  RZLOADER=	bin/rzloader.bin
  PRZLOADER=	bin/przloader.bin
+ FLOPPYLOAD=	floppyload.bin.pre
  COMLOAD=	bin/comload.bin
*** linux-asm-string.h.orig	Sat Mar 18 20:15:54 2000
--- linux-asm-string.h	Sat Mar 18 20:40:49 2000
*** 19,27 ****
   *		consider these trivial functions to be PD.
- #ifndef		__FreeBSD__
  typedef int	size_t;
- #endif
  extern void *__memcpy(void * to, const void * from, size_t n);
  extern void *__constant_memcpy(void * to, const void * from, size_t n);
--- 19,25 ----
This Mail was sent to netboot mailing list by:
Doug Ambrisko <>
To get help about this list, send a mail with 'help' as the only string in
it's body to If you have problems with this list,
send a mail to

For requests or suggestions regarding this mailing list archive please write to