On Wed, Jul 05, 2017 at 02:27:46AM +0300, Artturi Alm wrote: > Hi, > > instead of messing w/bs_tags, use the fact pmap_kernel()->pm_refs is going > to be 0 until pmap_bootstrap() has ran. tmp_bs_tag was unused, and > bootstrap_bs_map doesn't need/use the void *t-arg when being ran indirectly > via armv7_bs_map(). > > the whole existence of bootstrap_bs_map is another story, and the comment in > /* Now, map the FDT area. */ is somewhat an stupid excuse, it's already mapped > before initarm() w/VA=PA, and could well be _init()&_get_size()'d & memcpy'ed > somewhere in reach within bootstrap KVA, guess diff might follow for that, > too, if anyone has time for these simplifications. >
meh, i forgot where i was going with the above, the rant was supposed to let ppl know we have this thing known as uvm_page.c, which doesn't just load the physmem in, meaning, we could very well get the info out of FDT _early_ and uvm_page_physload() it before all the memory 'stealing' address messing does begin, and utilize uvm_page_physget() fwiw., initarm() doesn't need to look and feel like netbsd of the past decade, imo. -Artturi > the diff got tested/booted on cubie2, and i don't see how the result could > differ on any other SoC. > -Artturi >