coreboot/src/cpu
Raul E Rangel ea5c31138b arch/x86,cpu/x86: Disable the %gs and %fs segments
The %fs and %gs segment are typically used to implement thread local
storage or cpu local storage. We don't currently use these in coreboot,
so there is no reason to map them. By setting the segment index to 0,
it disables the segment. If an instruction tries to read from one of
these segments an exception will be raised.

The end goal is to make cpu_info() use the %gs segment. This will remove
the stack alignment requirements and fix smm_do_relocation.

BUG=b:194391185, b:179699789
TEST=Boot guybrush to OS

Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Change-Id: Iaa376e562acc6bd1dfffb7a23bdec82aa474c1d5
Reviewed-on: https://review.coreboot.org/c/coreboot/+/57860
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Peers <epeers@google.com>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2021-09-29 14:12:58 +00:00
..
amd cpu: add missing arch/cpu.h includes 2021-09-17 20:28:09 +00:00
armltd Kconfig: comply to Linux 5.3's Kconfig language rules 2019-11-23 20:09:56 +00:00
intel cpu: add missing arch/cpu.h includes 2021-09-17 20:28:09 +00:00
qemu-power8 src: Remove leading blank lines from SPDX header 2020-05-18 07:00:27 +00:00
qemu-x86 cpu/x86/tsc: Deduplicate Makefile logic 2021-09-08 14:35:16 +00:00
x86 arch/x86,cpu/x86: Disable the %gs and %fs segments 2021-09-29 14:12:58 +00:00
Kconfig src/cpu: Remove unused symbols 2021-02-18 10:11:24 +00:00
Makefile.inc src/cpu: Remove unused symbols 2021-02-18 10:11:24 +00:00