vmalloc limits in PPC kernels ?
Matt Porter
porter at cox.net
Fri Feb 14 09:40:40 EST 2003
On Thu, Feb 13, 2003 at 02:19:41PM -0600, vinai wrote:
> I've been doing a little work trying to update an in-house custom driver
> for x86. We acquired fairly large chunks of data, and we can't afford
> to lose any of it. To do this, we reserve a fairly large chunk of memory
> in which the data can be stored, as we can't afford system latencies
> when writing to disk. We were able to this in 2.2 without any problems,
> but in 2.4, a new "feature" was introduced to x86 that limited how much
> memory one can "vmalloc". I did a quick check, but didn't find anything
> in the ppc asm directory. Do we have such a limit ?
All architectures have a limit. Its size is defined by
VMALLOC_END-VMALLOC_START and further limited by the size of each
preceding allocation (+ a PAGE_SIZE pad) before the allocation in
question. Allocations also include ioremaps and on some architectures
consistent memory allocations absorb vmalloc space.
You can see the constraints in asm-ppc/pgtable.h. On PPC, it is
possible to change the default parameters in order to expand the
amount of vmalloc space available. This is accomplished via
config options under the advanced kernel options menu. With
PAGE_OFFSET at 0x40000000 and highmem, I've run a system with
nearly 3GB of vmalloc space.
Regards,
--
Matt Porter
porter at cox.net
This is Linux Country. On a quiet night, you can hear Windows reboot.
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-dev
mailing list