Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
Cosmetic: reduce diff to HEAD.
Add my copyright.
Reduce diff to HEAD.
Include apm emulation by default.
Save kernelgsbase and gsbase directly instead of playing with swapgs.
Non-device nodes (e.g. Thermal Zones, Processors) can be valid without
HID, don't skip them.
Make the reset of FS/GS base in cpu_init_msrs optional. We don't want
that in the ACPI resume path.
Force FPU context to be saved on suspend.

XXX not sure if the splipi is really needed, but other callers do that.
Sync with HEAD.
Sync with HEAD.
Save and restore MSR_EFER explicitly as the NOX bit is needed for
manipulation of the GDT. With that ltr and lldt can finally be done and
AMD64 fully resume now.
In pnp_set_state, don't set the state of the parent device if it is already
in the desired state.
s/IPL_SCHED/IPL_NONE/ for mutex.
Sync with HEAD.
Reduce diff to HEAD by adding files forgotten in early merges.
Add file back forgotten on early sync with HEAD.
Remove the rest of the unintentional diff in sys/rump.
More diff reduce to HEAD due to botched up merging.
Sync with HEAD.