Re: is there a limit on bss size?

From: Petko Manolov (petkan@dce.bg)
Date: Fri Oct 06 2000 - 04:12:36 EST


Philipp Rumpf wrote:
>
> On Thu, Oct 05, 2000 at 04:30:35PM +0100, Tigran Aivazian wrote:
> > Hi,
> >
> > I put a simple construct in kernel/sched.c like this:
> >
> > struct runq_log_s {
> > char comm[16];
> > int pid;
> > } runq_log[1024*1024];
> >
> > and the kernel didn't boot. Yes, I understand it is 20M of bss - so what?

Is it impossible to allocate this array dynamically? I am not sure if we
have
to change too many things in startup code. If yes, we must have good
enough
arguments for Linus.

> Look at the code in arch/i386/kernel/entry.S that initializes our temporary
> page tables:

Actually this code is from arch/i386/kernel/head.S ;-)

 
> /*
> * Initialize page tables
> */
> movl $pg0-__PAGE_OFFSET,%edi /* initialize page tables */
> movl $007,%eax /* "007" doesn't mean with right to kill, but
> PRESENT+RW+USER */
> 2: stosl
> add $0x1000,%eax
> cmp $empty_zero_page-__PAGE_OFFSET,%edi
> jne 2b

Actually when/where exactly mm init takes place should be checked first.

best,
Petkan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Oct 07 2000 - 21:00:18 EST