experimental qemu-devel port update, please test!

Kostik Belousov kostikbel at gmail.com
Tue Apr 24 11:39:25 UTC 2007


On Mon, Apr 23, 2007 at 12:23:09PM -0700, Bakul Shah wrote:
> > >> I found and fixed one bug in src/core/osloader.c (in
> > >> etherboot-5.4.3 code) which allows me to get a little bit
> > >> further.  If anyone wants to play with this more, I can send
> > >> them my changes.
> > > 
> > >  You may want to post those on the qemu list...
> > 
> > On this list too, since I'm not subscribed to the qemu list (nor are 
> > many people on this list I'm guessing).
> 
> The change I am talking about is in etherboot-5.4.3 code, not
> in qemu.  I tried upgrading ports/net/etherboot 5.4.3 but my
> effort is not in a usable state right now.
> 
> Download etherboot-5.4.3.tar.bz2, untar it, cd to its top dir
> and apply the following patch -- this is the only critical
> change.  And I borrowed other changes from the current
> net/etherboot port.
> 
> If you can compile rtl8139.zrom fine, run qemu with
> an explicit -option-rom argument and make sure you use
> model=rtl8139.
> 
> it will use dhcp to get an address, load freebsd's
> pxeboot and jump to it at which point everything halts.
> 
> May be etherboot does too much.  Since freebsd does pxeboot
> on a real machine, ideally the exact same pxeboot should work
> with etherboot.
> 
> --- src/core/osloader.c.orig	Sat Feb 24 06:44:59 2007
> +++ src/core/osloader.c	Sat Apr 21 21:50:37 2007
> @@ -344,6 +344,8 @@
>  	}
>  #endif /* defined(ELF_IMAGE) && defined(IMAGE_MULTIBOOT) */
>  
> +	if (!len) goto done;
> +
>  	/* Either len is greater or the skip is greater */
>  	if ((skip_sectors > (len >> 9)) ||
>  		((skip_sectors == (len >> 9)) && (skip_bytes >= (len & 0x1ff)))) {
> @@ -355,6 +357,7 @@
>  		skip_bytes -= len;
>  	}
>  	else {
> +	done:
>  		len -= (skip_sectors << 9) + skip_bytes;
>  		data += (skip_sectors << 9) + skip_bytes;
>  		skip_sectors = os_download(data, len, eof);

You may try the following patch for btx:
http://people.freebsd.org/~kib/realbtx/realbtx.2.patch
or take the pxeboot built from the patched source at
http://people.freebsd.org/~kib/realbtx/pxeboot

Please, handle the patch with care - do not install /boot/boot2 or
/boot/loader built with patch on the machine without ability to boot
from removable media, since the changes are in earliest stage and were not
tested exhaustive.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-emulation/attachments/20070424/de7a97a2/attachment.pgp


More information about the freebsd-emulation mailing list