Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Aug 2016 15:36:21 +0300
From:      Slawa Olhovchenkov <slw@zxy.spb.ru>
To:        Toomas Soome <tsoome@me.com>
Cc:        Warner Losh <imp@bsdimp.com>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, src-committers <src-committers@freebsd.org>, Toomas Soome <tsoome@freebsd.org>, Andriy Gapon <avg@freebsd.org>
Subject:   Re: svn commit: r304321 - in head/sys: boot/efi/boot1 boot/efi/loader boot/i386/boot2 boot/i386/gptboot boot/i386/gptzfsboot boot/i386/zfsboot boot/userboot/ficl boot/userboot/userboot boot/userboot/zf...
Message-ID:  <20160823123621.GB88122@zxy.spb.ru>
In-Reply-To: <151A63A8-6444-4E84-80B8-B773C8F661EF@me.com>
References:  <7bdb0cf5-e139-375b-8be6-c1280e39da25@FreeBSD.org> <4c76efd6-146a-e70b-c065-729d223e3398@FreeBSD.org> <AE24A37C-51F5-4CEC-9399-D7FDEBC93972@me.com> <CANCZdfo0P7CPPf4khzj_JnSjWQ4gVqK9wSEqW=LCdZKQwGh6Sw@mail.gmail.com> <AE896F50-D053-4C30-BB43-286E1CCDE4B8@me.com> <1C479C8A-9F58-425C-8AC2-0A6809F39ACA@me.com> <20160823112940.GW22212@zxy.spb.ru> <C8A2C3A1-C35A-4993-AC0F-66F6B0AD51A6@me.com> <20160823121629.GA88122@zxy.spb.ru> <151A63A8-6444-4E84-80B8-B773C8F661EF@me.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 23, 2016 at 03:26:04PM +0300, Toomas Soome wrote:

> > Main trouble (by kib@) is 640KB real mode limit.
> > Separated heap don't soled this.
> > May be solution is early switch to protected mode, boot2?
> 
> hm, but boot2 is already btx client and btx is setting up the
> protected mode. Only zfsboot/gpt[zfs]boot memory copy (boot2
> relocator) is working in segmented real mode, so the gptldr.S and
> zfsldr.S has to deal with memory segments to set boot2 up. Or did
> got you wrong?

Mat be I am wrong.
May be I am not very clean.
As I understund kib@ restriction caused by 640KB realmode limit.
In case of boot2 start in real mode and read enterly by boot1 -- we
also touch this trouble.

How to resolve this:

1) start entirely; boot2 in protected mode and read all boot2 to
extended memory

2) read only part of boot2 (boot2 relocator) by boot1 and switch to
protected mode before reading rest of boot2 by boot2 code.



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