diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2012-05-08 20:22:37 +0200 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2012-05-08 20:48:03 +0200 |
commit | e5684ec438a094bec0f7d5c52652c0901b48b613 (patch) | |
tree | 8cc3cf787a582977ff08ed578907d6df7dbc7e6e /block | |
parent | x86, realmode: Remove indirect jumps in trampoline_32 and wakeup_asm (diff) | |
download | linux-e5684ec438a094bec0f7d5c52652c0901b48b613.tar.xz linux-e5684ec438a094bec0f7d5c52652c0901b48b613.zip |
x86, realmode: Replace open-coded ljmpw with a macro
We cannot code an ljmpw to the real-mode segment directly, because gas
refuses to assemble an ljmp with a symbolic segment. Instead of
open-coding it everywhere, define a macro and use it for this case.
This is specifically an ljmpw from a 16-bit segment. This is okay, as
one should never enter real mode from a 32-bit segment: if one do, the
CPU ends up in a bizarre (and useless) mode sometimes called "unreal
mode" where segments behave like real mode but the default address and
operand sizes is 32 bits.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-15-git-send-email-jarkko.sakkinen@intel.com
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions