When 'CONFIG_AMD_MEM_ENCRYPT' is not set, the IDT handler for #VC is not
registered, but the address of the #VC IST stack is still set in
tss_setup_ist(). Therefore, the name of the associated exception stack
is "UNKNOWN" instead of "VC". Although the base of the exception
stack
is not zero and is available, it is not accessible, which will cause the
backtrace to fail when attempting to access the #VC stack. To fix this,
remove the name check.
Signe-off-by: Hou Wenlong <houwenlong.hwl(a)antgroup.com>
---
x86_64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/x86_64.c b/x86_64.c
index e7f8fe25b31f..ee12ba095e6e 100644
--- a/x86_64.c
+++ b/x86_64.c
@@ -1540,7 +1540,7 @@ x86_64_ist_init(void)
ms->stkinfo.available[c][i] = TRUE;
/* VC stack can be unmapped if SEV-ES is disabled or not supported. */
- if (STREQ(ms->stkinfo.exception_stacks[i], "VC") &&
+ if (ms->stkinfo.ebase[c][i] &&
!accessible(ms->stkinfo.ebase[c][i]))
ms->stkinfo.available[c][i] = FALSE;
}
base-commit: f13853cef53f5c5463a51021edbc81977e2b1405
--
2.31.1