]> git.lizzy.rs Git - plan9front.git/commitdiff
zynq: set mainmem->maxsize so kernel malloc() wont fail after 4MB
authorcinap_lenrek <cinap_lenrek@felloff.net>
Wed, 24 Dec 2014 12:37:54 +0000 (13:37 +0100)
committercinap_lenrek <cinap_lenrek@felloff.net>
Wed, 24 Dec 2014 12:37:54 +0000 (13:37 +0100)
sys/src/9/zynq/main.c

index dc0bdcce73802e8d78bd0eb0cca033af596491c6..d0b60734ed16233d9c9df7aae03371ce76640fc6 100644 (file)
@@ -178,6 +178,7 @@ options(void)
 void
 confinit(void)
 {
+       ulong kmem;
        int i;
 
        conf.nmach = 1;
@@ -189,7 +190,13 @@ confinit(void)
        conf.npage = 0;
        for(i = 0; i < nelem(conf.mem); i++)
                conf.npage += conf.mem[i].npage = (conf.mem[i].limit - conf.mem[i].base) >> PGSHIFT;
-       conf.upages = conf.npage - 100*1024*1024 / BY2PG;
+       kmem = 100*1024*1024;
+       conf.upages = conf.npage - kmem/BY2PG;
+       kmem -= conf.upages*sizeof(Page)
+               + conf.nproc*sizeof(Proc)
+               + conf.nimage*sizeof(Image);
+       mainmem->maxsize = kmem;
+       imagmem->maxsize = kmem - (kmem/10);
 }
 
 static uchar *