Patrick Georgi has submitted this change and it was merged. ( https://review.coreboot.org/27812 )
Change subject: exception: Fix segment error code mask ......................................................................
exception: Fix segment error code mask
The segment error descriptor is actually 13 bits long.
BUG=b:109749762 TEST=Verified by causing a segment error
Change-Id: I3439f9ce1e8cf0c472c4eb82d74a787718c9609f Signed-off-by: Raul E Rangel rrangel@chromium.org Reviewed-on: https://review.coreboot.org/27812 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Martin Roth martinroth@google.com --- M payloads/libpayload/arch/x86/exception.c 1 file changed, 1 insertion(+), 1 deletion(-)
Approvals: build bot (Jenkins): Verified Martin Roth: Looks good to me, approved
diff --git a/payloads/libpayload/arch/x86/exception.c b/payloads/libpayload/arch/x86/exception.c index f6bb8c9..b562660 100644 --- a/payloads/libpayload/arch/x86/exception.c +++ b/payloads/libpayload/arch/x86/exception.c @@ -59,7 +59,7 @@
static void print_segment_error_code(u32 code) { - printf("%#x - descriptor %#x in the ", code, (code >> 3) & 0x1f); + printf("%#x - descriptor %#x in the ", code, (code >> 3) & 0x1FFF); if (code & (0x1 << 1)) { printf("IDT"); } else {