Re: [PATCH V2] x86/sev-es: Fix SEV-ES #VC handler for string port IO

From: Tom Lendacky
Date: Mon Jan 11 2021 - 13:30:08 EST


On 1/10/21 1:11 AM, Hyunwook (Wooky) Baek wrote:
Don't assume dest/source buffers are userspace addresses when manually
copying data for string I/O or MOVS MMIO, as {get,put}_user() will fail
if handed a kernel address and ultimately lead to a kernel panic.

Signed-off-by: Hyunwook (Wooky) Baek <baekhw@xxxxxxxxxx>
Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
---

This patch is tested by invoking INSB/OUTSB instructions in kernel space in a
SEV-ES-enabled VM. Without the patch, the kernel crashed with the following
message:
"SEV-ES: Unsupported exception in #VC instruction emulation - can't continue"
With the patch, the instructions successfully read/wrote the string from/to
the I/O port.

Shouldn't this have a Fixes: tag?

Thanks,
Tom


arch/x86/kernel/sev-es.c | 12 ++++++++++++
1 file changed, 12 insertions(+)