x86/boot: Allow the real mode trampoline to be below 64kB

The real mode trampoline must be allocated below 640kB.  For safety,
it is allocated at as high an address as possible, as BIOSes are more likely
to clobber it the lower its address.

However, the kernel is more aggressive than appropriate about
protecting low addresses: if there is no room for the trampoline in
the range 64kB - 640kB, the system will panic.  It's better to use
the low 64kB of memory than to panic, so widen the range to 4kB -
640kB.  This will have no effect on systems with enough memory above
64kB, but it will enable the real mode trampoline to be allocated in
normal low memory on systems with insufficient space above 64kB, e.g.
my laptop.

I verified that the real mode trampline is the only allocation that
will be affected by this change by booting with memblock=debug.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
2 files changed