diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2022-01-10 15:35:41 -0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2022-01-10 15:35:41 -0300 |
commit | debe70e488968e82282db48fbbcf84b5080f742c (patch) | |
tree | 90f96f07c499bfc5bdbbeab3ca4a81a5a7672b61 /arch/x86/kernel/cc_platform.c | |
parent | 65f8d08cf838df3c3d728cdef908090237931496 (diff) | |
parent | 133d9c53c9dcbb1b8f317e402e79c44d9eb725c9 (diff) |
Merge remote-tracking branch 'torvalds/master' into perf/core
To pick up fixes.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'arch/x86/kernel/cc_platform.c')
-rw-r--r-- | arch/x86/kernel/cc_platform.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86/kernel/cc_platform.c b/arch/x86/kernel/cc_platform.c index 03bb2f343ddb..8a25b1c0d480 100644 --- a/arch/x86/kernel/cc_platform.c +++ b/arch/x86/kernel/cc_platform.c @@ -50,6 +50,14 @@ static bool amd_cc_platform_has(enum cc_attr attr) case CC_ATTR_GUEST_STATE_ENCRYPT: return sev_status & MSR_AMD64_SEV_ES_ENABLED; + /* + * With SEV, the rep string I/O instructions need to be unrolled + * but SEV-ES supports them through the #VC handler. + */ + case CC_ATTR_GUEST_UNROLL_STRING_IO: + return (sev_status & MSR_AMD64_SEV_ENABLED) && + !(sev_status & MSR_AMD64_SEV_ES_ENABLED); + default: return false; } |