Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Oct 2006 23:54:19 +0400
From:      Ruslan Ermilov <ru@FreeBSD.ORG>
To:        John Baldwin <jhb@FreeBSD.ORG>
Cc:        freebsd-stable@FreeBSD.ORG, Stefan Bethke <stb@lassitu.de>, Bruce Evans <bde@zeta.org.au>, Bruce Evans <bde@FreeBSD.ORG>
Subject:   Re: Still possible to directly boot without loader?
Message-ID:  <20061026195419.GA2972@rambler-co.ru>
In-Reply-To: <200610261542.35322.jhb@freebsd.org>
References:  <3A8131D4-881E-4873-A682-543A1A88C063@lassitu.de> <200610261138.24939.jhb@freebsd.org> <20061026191820.GB2420@rambler-co.ru> <200610261542.35322.jhb@freebsd.org>

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

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

On Thu, Oct 26, 2006 at 03:42:34PM -0400, John Baldwin wrote:
> On Thursday 26 October 2006 15:18, Ruslan Ermilov wrote:
> > On Thu, Oct 26, 2006 at 11:38:24AM -0400, John Baldwin wrote:
> > > On Thursday 26 October 2006 10:42, Ruslan Ermilov wrote:
> > > > On Thu, Oct 26, 2006 at 10:28:09AM -0400, John Baldwin wrote:
> > > > > boot2 should do whatever loader does.
> > > > >=20
> > > > But this would be a regression, since loader(8) does the following,
> > > > in the ELF32 case:
> > > >=20
> > > > : 0 edoofus:ttyp2:/sys/boot/i386/libi386 >grep -w entry elf32_freeb=
sd.c
> > > > :     vm_offset_t                 entry, bootinfop, modulep, kernen=
d;
> > > > :     entry =3D ehdr->e_entry & 0xffffff;
> > > > :     printf("Start @ 0x%lx ...\n", entry);
> > > > :     __exec((void *)entry, boothowto, bootdev, 0, 0, 0, bootinfop,=
 modulep, kernend);
> > >=20
> > > Ah, ok.  Make them both just mask the top 8 bits then. :)
> > >=20
> > OK, I backed out your change to boot2.c.
>=20
> Sorry, I meant that both boot2 and loader should follow your proposal of =
masking 28 bits.
> Just masking the top 4 bits is probably sufficient.
>=20
:-)

OK, I'll craft a patch tomorrow.  This will also require patching at least
sys/boot/common/load_elf.c:__elfN(loadimage), maybe something else.
I think we could actually mask 30 bits; that would allow to load 1G kernels,
provided that sufficient memory exists.


Cheers,
--=20
Ruslan Ermilov
ru@FreeBSD.org
FreeBSD committer

--SLDf9lqlvOQaIe6s
Content-Type: application/pgp-signature
Content-Disposition: inline

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

iD8DBQFFQRJrqRfpzJluFF4RAmqKAJ4kQqHgWOlEAJ9G1F2ElT2/RfpiuQCeMn59
zIzlFqPF1jRWHo3z9g/b5MM=
=Btrr
-----END PGP SIGNATURE-----

--SLDf9lqlvOQaIe6s--



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