kernel - Rearrange pmap_growkernel() and fix up x86_64's pmap_growkernel()
* Rearrange pmap_growkernel() to pass an address range instead of just an
end address.
* vm_map() no longer retries after calling pmap_growkernel(), the function
either succeeds or panics.
* x86_64 - kldloading modules after system boot no longer populates 128GB
worth of page tables (which eats ~256MB of ram) in order to push
kernel_vm_end past KERNBASE.
Instead, any kldloads into the space beyond KERNBASE, which is required
to be able to link them into the kernel due to 32-bit PC-relative
addressing, will populate just the required page tables and will not
bump up kernel_vm_end.
* Fixes a panic which can occur well after boot when kldload'ing the first
module, if 256MB worth of free pages is not instantly available.
* Saves us 256M of ram on x86_64.