Date: Fri, 6 Aug 2010 12:54:05 +0200 From: Peter Holm <pho@freebsd.org> To: Konstantin Belousov <kib@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r210926 - head/sys/dev/null Message-ID: <20100806105405.GA22879@x2.osted.lan> In-Reply-To: <201008060947.o769lmjn076629@svn.freebsd.org> References: <201008060947.o769lmjn076629@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Aug 06, 2010 at 09:47:48AM +0000, Konstantin Belousov wrote: > Author: kib > Date: Fri Aug 6 09:47:48 2010 > New Revision: 210926 > URL: http://svn.freebsd.org/changeset/base/210926 > > Log: > Mark /dev/zero and /dev/null as eternal. > > In collaboration with: pho > MFC after: 1 month > > Modified: > head/sys/dev/null/null.c > > Modified: head/sys/dev/null/null.c > ============================================================================== > --- head/sys/dev/null/null.c Fri Aug 6 09:46:53 2010 (r210925) > +++ head/sys/dev/null/null.c Fri Aug 6 09:47:48 2010 (r210926) > @@ -112,10 +112,10 @@ null_modevent(module_t mod __unused, int > if (bootverbose) > printf("null: <null device, zero device>\n"); > zbuf = (void *)malloc(PAGE_SIZE, M_TEMP, M_WAITOK | M_ZERO); > - null_dev = make_dev(&null_cdevsw, 0, UID_ROOT, GID_WHEEL, > - 0666, "null"); > - zero_dev = make_dev(&zero_cdevsw, 0, UID_ROOT, GID_WHEEL, > - 0666, "zero"); > + null_dev = make_dev_credf(MAKEDEV_ETERNAL_KLD, &null_cdevsw, 0, > + NULL, UID_ROOT, GID_WHEEL, 0666, "null"); > + zero_dev = make_dev_credf(MAKEDEV_ETERNAL_KLD, &zero_cdevsw, 0, > + NULL, UID_ROOT, GID_WHEEL, 0666, "zero"); > break; > > case MOD_UNLOAD: The micro-benchmarks for this was was: 1: open/read/close and open/write/close in a loop 2: read and write in a loop 3: open/read/close in a loop Profileng of scenario #1 shows this: $ ministat -w 72 devmtx1.r210851.20100805092611.log devmtx1.r210851M.20100805103753.log x devmtx1.r210851.20100805092611.log + devmtx1.r210851M.20100805103753.log +------------------------------------------------------------------------+ | + x | |+ ++ + xxxx| | |_AM_| |MA|| +------------------------------------------------------------------------+ N Min Max Median Avg Stddev x 5 74.54 75.22 74.89 74.926 0.25938389 + 5 60.93 62.15 61.73 61.6 0.4501111 Difference at 95.0% confidence -13.326 +/- 0.535747 -17.7855% +/- 0.715035% (Student's t, pooled s = 0.367342) Profileng of scenario #2 shows this: $ ministat -w 72 devmtx2.r210851.20100805092611.log devmtx2.r210851M.20100805103753.log x devmtx2.r210851.20100805092611.log + devmtx2.r210851M.20100805103753.log +------------------------------------------------------------------------+ |+ x| |+ x| |+ x| |+ x| |+ x| |A A| +------------------------------------------------------------------------+ N Min Max Median Avg Stddev x 5 64.97 65.31 65.01 65.062 0.14131525 + 5 9.75 9.97 9.82 9.84 0.087464278 Difference at 95.0% confidence -55.222 +/- 0.17139 -84.876% +/- 0.263426% (Student's t, pooled s = 0.117516) Profileng of scenario #3 shows this: $ ministat -w 72 devmtx3.r210851.20100805092611.log devmtx3.r210851M.20100805103753.log x devmtx3.r210851.20100805092611.log + devmtx3.r210851M.20100805103753.log +------------------------------------------------------------------------+ |+ + x | |+ + + x xx x| ||_A_| |__A_| | +------------------------------------------------------------------------+ N Min Max Median Avg Stddev x 5 73.27 75.57 74.5 74.32 0.9681942 + 5 49.19 51.03 49.82 49.816 0.75145193 Difference at 95.0% confidence -24.504 +/- 1.26392 -32.9709% +/- 1.70065% (Student's t, pooled s = 0.866626) $ Details at http://people.freebsd.org/~pho/devmtx/ - Peter
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100806105405.GA22879>