Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Apr 2007 14:22:31 +0300
From:      Kostik Belousov <kostikbel@gmail.com>
To:        Bakul Shah <bakul@bitblocks.com>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: experimental qemu-devel port update, please test!
Message-ID:  <20070424112231.GC2441@deviant.kiev.zoral.com.ua>
In-Reply-To: <20070423192309.E77F65B3B@mail.bitblocks.com>
References:  <462ADE46.3080304@freebsd.org> <20070423192309.E77F65B3B@mail.bitblocks.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--5/uDoXvLw7AC5HRs
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

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.
> > >=20
> > >  You may want to post those on the qemu list...
> >=20
> > On this list too, since I'm not subscribed to the qemu list (nor are=20
> > many people on this list I'm guessing).
>=20
> 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.
>=20
> 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.
>=20
> If you can compile rtl8139.zrom fine, run qemu with
> an explicit -option-rom argument and make sure you use
> model=3Drtl8139.
>=20
> it will use dhcp to get an address, load freebsd's
> pxeboot and jump to it at which point everything halts.
>=20
> May be etherboot does too much.  Since freebsd does pxeboot
> on a real machine, ideally the exact same pxeboot should work
> with etherboot.
>=20
> --- 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) */
> =20
> +	if (!len) goto done;
> +
>  	/* Either len is greater or the skip is greater */
>  	if ((skip_sectors > (len >> 9)) ||
>  		((skip_sectors =3D=3D (len >> 9)) && (skip_bytes >=3D (len & 0x1ff))))=
 {
> @@ -355,6 +357,7 @@
>  		skip_bytes -=3D len;
>  	}
>  	else {
> +	done:
>  		len -=3D (skip_sectors << 9) + skip_bytes;
>  		data +=3D (skip_sectors << 9) + skip_bytes;
>  		skip_sectors =3D 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.

--5/uDoXvLw7AC5HRs
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)

iD8DBQFGLeh2C3+MBN1Mb4gRAth3AKCra4lq/GOQVH+gU4A4OLGKS7V9rwCgzNsv
PKQWfHxSdVxJHAogtu8l2vo=
=anrd
-----END PGP SIGNATURE-----

--5/uDoXvLw7AC5HRs--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070424112231.GC2441>