Date: Wed, 22 Aug 2001 07:56:41 -0700 (PDT) From: Matt Dillon <dillon@earth.backplane.com> To: Terry Lambert <tlambert2@mindspring.com> Cc: Jake Burkholder <jake@k7.locore.ca>, John Baldwin <jhb@FreeBSD.ORG>, freebsd-smp@FreeBSD.ORG, freebsd-alpha@FreeBSD.ORG Subject: Re: Preliminary proposed rollup of kernel submap initialization code Message-ID: <200108221456.f7MEufD74609@earth.backplane.com> References: <200108210157.f7L1vAh10384@k7.locore.ca> <200108211736.f7LHaoC64628@earth.backplane.com> <3B83623D.9DC45B93@mindspring.com>
index | next in thread | previous in thread | raw e-mail
:Then you pass it's address in...
:
:> +void
:> +vm_ksubmap_init(struct kva_md_info *kmi)
:> +{
:
:And then use much more expensive pointer arithmatic...
:
:> + buffer_map = kmem_suballoc(clean_map, &kmi->buffer_sva,
:> + &kmi->buffer_eva, (nbuf*BKVASIZE));
:
:I understand that this is called once, but doesn't this
:really obfuscate things?
:
:-- Terry
I don't follow. The argument passing and pointer arithmatic is not
expensive at all - in fact, it is less expensive then the original MD
code if you look at the assembly output! And who really gives a damn
about a few nanoseconds during boot anyway?
kmi is static in the MD sections because it allows the kernel to compile
for all platforms without us having to 'fix' all platforms all at once.
One could also argue that the mainline kernel code has no direct need to
know about the contents of kmi but that wasn't the main reason for doing
it that way.
-Matt
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200108221456.f7MEufD74609>
