The following commit has been merged into the x86/seves branch of tip: Commit-ID: bb8dc26937d51b3421b26d9d91cdad3484c34b7e Gitweb: https://git.kernel.org/tip/bb8dc26937d51b3421b26d9d91cdad3484c34b7e Author: Borislav Petkov <bp@xxxxxxx> AuthorDate: Tue, 23 Feb 2021 12:03:19 +01:00 Committer: Borislav Petkov <bp@xxxxxxx> CommitterDate: Mon, 01 Mar 2021 12:40:22 +01:00 x86/sev-es: Remove subtraction of res variable vc_decode_insn() calls copy_from_kernel_nofault() by way of vc_fetch_insn_kernel() to fetch 15 bytes max of opcodes to decode. copy_from_kernel_nofault() returns negative on error and 0 on success. The error case is handled by returning ES_EXCEPTION. In the success case, the ret variable which contains the return value is 0 so there's no need to subtract it from MAX_INSN_SIZE when initializing the insn buffer for further decoding. Remove it. No functional changes. Signed-off-by: Borislav Petkov <bp@xxxxxxx> Reviewed-by: Joerg Roedel <jroedel@xxxxxxx> Link: https://lkml.kernel.org/r/20210223111130.16201-1-bp@xxxxxxxxx --- arch/x86/kernel/sev-es.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kernel/sev-es.c b/arch/x86/kernel/sev-es.c index 84c1821..1e78f4b 100644 --- a/arch/x86/kernel/sev-es.c +++ b/arch/x86/kernel/sev-es.c @@ -267,7 +267,7 @@ static enum es_result vc_decode_insn(struct es_em_ctxt *ctxt) return ES_EXCEPTION; } - insn_init(&ctxt->insn, buffer, MAX_INSN_SIZE - res, 1); + insn_init(&ctxt->insn, buffer, MAX_INSN_SIZE, 1); insn_get_length(&ctxt->insn); }
![]() |