From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 5666 invoked from network); 14 Jun 2021 02:07:08 -0000 Received: from 1ess.inri.net (216.126.196.35) by inbox.vuxu.org with ESMTPUTF8; 14 Jun 2021 02:07:08 -0000 Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Sun Jun 13 22:02:18 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id ce76583e (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Sun, 13 Jun 2021 18:55:27 -0700 (PDT) Message-ID: <3B7CD4D57FAF1705F3A5E6363CAADE67@eigenstate.org> To: 9front@9front.org Date: Sun, 13 Jun 2021 21:55:25 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: core-oriented replication Subject: Re: [9front] [PATCH] kernel: make conf.nproc configurable. all kernels now default to 100 + ((conf.npage*BY2PG)/MB)*5 Reply-To: 9front@9front.org Precedence: bulk idea makes sense, but while you're in here, it's probably a good idea to move the code to port/. Quoth james palmer : > --- > diff 9eb2b302e6240695960f5ce37c68e40a96da44d6 56656a7ac6aac082b65d77cf0a0e4bc492ddcd2c > --- a/sys/src/9/bcm/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/bcm/main.c Mon Jun 7 10:01:32 2021 > @@ -219,11 +219,12 @@ > conf.nmach = getncpus(); > > /* set up other configuration parameters */ > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtoul(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = conf.npage*3; > conf.nswppo = 4096; > conf.nimage = 200; > --- a/sys/src/9/bcm64/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/bcm64/main.c Mon Jun 7 10:01:32 2021 > @@ -90,11 +90,12 @@ > conf.nmach = getncpus(); > > /* set up other configuration parameters */ > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtoul(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = conf.npage*3; > conf.nswppo = 4096; > conf.nimage = 200; > --- a/sys/src/9/cycv/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/cycv/main.c Mon Jun 7 10:01:32 2021 > @@ -100,13 +100,19 @@ > { > ulong kmem; > int i; > + char *p; > > conf.nmach = 1; > - conf.nproc = 2000; > conf.ialloc = 16*1024*1024; > conf.nimage = 200; > conf.mem[0].base = PGROUND((ulong)end - KZERO); > conf.mem[0].npage = (1024*1024*1024 - conf.mem[0].base) >> PGSHIFT; > + > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtoul(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > > ramdiskinit(); > > --- a/sys/src/9/kw/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/kw/main.c Mon Jun 7 10:01:32 2021 > @@ -397,6 +397,7 @@ > int i; > ulong kpages; > uintptr pa; > + char *p; > > /* > * Copy the physical memory configuration to Conf.mem. > @@ -430,11 +431,12 @@ > conf.nmach = 1; > > /* set up other configuration parameters */ > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtoul(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = conf.npage*3; > conf.nswppo = 4096; > conf.nimage = 200; > --- a/sys/src/9/mtx/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/mtx/main.c Mon Jun 7 10:01:32 2021 > @@ -180,11 +180,13 @@ > conf.npage = conf.mem[0].npage; > > conf.nmach = 1; > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nimage = 200; > conf.nswap = conf.nproc*80; > conf.nswppo = 4096; > --- a/sys/src/9/omap/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/omap/main.c Mon Jun 7 10:01:32 2021 > @@ -449,15 +449,15 @@ > conf.nmach = 1; > > /* set up other configuration parameters */ > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = conf.npage*3; > conf.nswppo = 4096; > conf.nimage = 200; > - > conf.copymode = 0; /* copy on write */ > > /* > --- a/sys/src/9/pc/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/pc/main.c Mon Jun 7 10:01:32 2021 > @@ -155,11 +155,12 @@ > for(i=0; i conf.npage += conf.mem[i].npage; > > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nimage = 200; > conf.nswap = conf.nproc*80; > conf.nswppo = 4096; > --- a/sys/src/9/pc64/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/pc64/main.c Mon Jun 7 10:01:32 2021 > @@ -39,12 +39,13 @@ > conf.npage = 0; > for(i=0; i conf.npage += conf.mem[i].npage; > + > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > conf.nimage = 200; > conf.nswap = conf.nproc*80; > conf.nswppo = 4096; > --- a/sys/src/9/ppc/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/ppc/main.c Mon Jun 7 10:01:32 2021 > @@ -243,11 +243,13 @@ > conf.npage = conf.mem[0].npage + conf.mem[1].npage; > > conf.nmach = 1; > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nimage = 200; > conf.nswap = conf.nproc*80; > conf.nswppo = 4096; > --- a/sys/src/9/sgi/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/sgi/main.c Mon Jun 7 10:01:32 2021 > @@ -334,6 +334,7 @@ > confinit(void) > { > ulong kpages; > + char *p; > > /* > * set up CPU's mach structure > @@ -345,7 +346,12 @@ > conf.nmach = 1; > > /* set up other configuration parameters */ > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = 262144; > conf.nswppo = 4096; > conf.nimage = 200; > --- a/sys/src/9/teg2/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/teg2/main.c Mon Jun 7 10:01:32 2021 > @@ -647,11 +647,12 @@ > conf.ialloc = ((conf.npage-conf.upages)/2)*BY2PG; > > /* set up other configuration parameters */ > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nswap = conf.npage*3; > conf.nswppo = 4096; > conf.nimage = 200; > --- a/sys/src/9/xen/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/xen/main.c Mon Jun 7 10:01:32 2021 > @@ -249,11 +249,12 @@ > for(i=0; i conf.npage += conf.mem[i].npage; > > - conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > - if(cpuserver) > - conf.nproc *= 3; > - if(conf.nproc > 2000) > - conf.nproc = 2000; > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtol(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.nimage = 200; > conf.nswap = conf.nproc*80; > conf.nswppo = 4096; > --- a/sys/src/9/zynq/main.c Mon Jun 7 09:39:21 2021 > +++ b/sys/src/9/zynq/main.c Mon Jun 7 10:01:32 2021 > @@ -170,9 +170,16 @@ > { > ulong kmem; > int i; > + char *p; > > conf.nmach = 1; > - conf.nproc = 2000; > + > + conf.nproc = 0; > + if(p = getconf("*nproc")) > + conf.nproc = strtoul(p, 0, 0); > + if(conf.nproc == 0) > + conf.nproc = 100 + ((conf.npage*BY2PG)/MB)*5; > + > conf.ialloc = 16*1024*1024; > conf.nimage = 200; > conf.mem[0].base = PGROUND((ulong)end - KZERO); >