Date: Tue, 20 Dec 2005 09:59:15 -0500 From: John Baldwin <jhb@freebsd.org> To: Maxim.Sobolev@portaone.com Cc: cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/boot/i386/loader main.c Message-ID: <200512200959.16641.jhb@freebsd.org> In-Reply-To: <43A7895C.9060608@portaone.com> References: <200512190926.jBJ9QhbD078141@repoman.freebsd.org> <200512191420.03927.jhb@freebsd.org> <43A7895C.9060608@portaone.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 19 December 2005 11:32 pm, Maxim Sobolev wrote: > John Baldwin wrote: > > On Monday 19 December 2005 01:32 pm, Maxim Sobolev wrote: > >> John Baldwin wrote: > >>> On Monday 19 December 2005 04:26 am, Maxim Sobolev wrote: > >>>> sobomax 2005-12-19 09:26:42 UTC > >>>> > >>>> FreeBSD src repository > >>>> > >>>> Modified files: > >>>> sys/boot/i386/loader main.c > >>>> Log: > >>>> If LOADER_BZIP2_SUPPORT is defined allocate heap in the 1MB-4MB > >>>> range to provide enough room for decompression (up to 2.5MB is > >>>> necessary). This should be safe to do since we load i386 kernels after > >>>> 8MB mark now, so that 16MB is the minimum amount of RAM necessary to > >>>> even boot FreeBSD. > >>> > >>> Err, I thought we loaded PAE kernels at 2MB and non-PAE kernels at 4MB > >>> to skip the first PSE page (PSE pages are 2MB on PAE). > >> > >> You are right, my mistake, sorry. In any case memory in the range > >> 1MB-4MB can be used by default. > > > > Errm, no it can't. PAE kernels (and amd64 kernels I think) are both > > loaded at 2MB, so that only leaves memory in the range 1MB-2MB. > > I see, did not know about amd64 (PAE is less a concern for me since it's > not a default kernel). What do you think about the following patch: > > http://www.pbxpress.com/~sobomax/loader.diff > > It moves heap to the top of the extended memory and teaches > i386_copyin() to avoid messing up this region, so that in low memory > situation it will just fail, not trash heap. So, if I understand correctly, you're now sticking the heap at the last 3MB of RAM. FYI, as long as you have a PPro or newer you can test booting a PAE kernel. You don't have to have > 4GB of RAM. So, you can test this locally to see if you can boot a PAE kernel (bzipped at that!) before committing. -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200512200959.16641.jhb>