Received: by 2002:a05:6520:1682:b0:147:d1a0:b502 with SMTP id ck2csp5599842lkb; Mon, 11 Oct 2021 09:42:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzK6thFVQxiRIyAIedTrsi9wpMtdNvI/7qseLovSmupzn4Vy2IeEM/JDneGGusS7z7M93Gh X-Received: by 2002:aa7:c945:: with SMTP id h5mr43210310edt.350.1633970447935; Mon, 11 Oct 2021 09:40:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633970447; cv=none; d=google.com; s=arc-20160816; b=J5swAX00OBXozGe/b8IBs1COAUXHFe3NFHYzsnn9DuQopmGaOPcp4vnmZb+fZBe8gY sHIN26moKZF0Yfltp9V/yqNjGVy2SmNKCTNLYzGYZ6l6LS0sIlzEOaTXM/g8914X2m2O 1jyvrLfmy9LLjZnAT0G+oWM4xF9ksaexOhgfYR8vnE/qTRc4ZkGJZxc12TGMx24et8KC pDM7H5eBZWzhWkQOIvWH8EEyZapK0PxpNrJSSv3a6vbYRgvwddem5QIiMWH3Se+613/W KpnMjX5a7H+vsPTkqLm/dRayhfn0QFCf4eXjLdvy4s4QA4MJxTjP9GKBApZzwx4gIIPO uXzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=qErzsSKRnfmfyYFTqGACIEeTgpPyX7hRSoYMk6Tg64k=; b=roZxqTa1e2jDVoBafFv0AgdteG8i1wG1n35bQlAuujYdS+tvYm3UEg7JK3+tFZn2Ud wiDMBHd/S+K7HQth9bjAjh6vPtthmasoIofKyt8hB8eIqmJS5fv4n/MoGaYdFJtw7GfB xU3WJ0BHzkxge4ILsBObqF3FYCabDtt8bbG7bZeqntbTM8AzFfUFHLgPb3uZOqYPZEpA hhetsvm2OaeO7QJgpYdiL0XPGHhkswhQn58QnqyQ5p7LqoMNu7e1S9/q/i2nCNqwGmyw FLJ2pPvkplb77Dyvtdtsh+iGimC1r0zYjVuNqnEo0Mtr+lG/9snigniJt4O/ffZYQsqt IlRQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=abhSclr1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id de44si11501651ejc.692.2021.10.11.09.40.24; Mon, 11 Oct 2021 09:40:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=abhSclr1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244857AbhJKOSW (ORCPT + 99 others); Mon, 11 Oct 2021 10:18:22 -0400 Received: from mail.kernel.org ([198.145.29.99]:33704 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243778AbhJKONX (ORCPT ); Mon, 11 Oct 2021 10:13:23 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 213EE61350; Mon, 11 Oct 2021 14:04:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1633961055; bh=0JC7Hi9DfOwGRcfDRZqeJPU2hfZoHJL0faAF0oqxeQ8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=abhSclr1ADtMJq7hIyRi/pIq7zJQJuYJA0O3E+LAvJUe26x39m1FJLI9U9b1/4HW5 B+dVEdhbC9Sf0TmuHiHO1RnvkyUtgedytkmaRUM7dQTKYU2QrCaTs7W1K+abZnOLLd OYC7n/Y4q0bISE7xpLaBlQdz8kVlWbJo8nCUh1AA= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Tom Lendacky , Borislav Petkov Subject: [PATCH 5.14 146/151] x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0] Date: Mon, 11 Oct 2021 15:46:58 +0200 Message-Id: <20211011134522.534816746@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211011134517.833565002@linuxfoundation.org> References: <20211011134517.833565002@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Tom Lendacky commit 06f2ac3d4219bbbfd93d79e01966a42053084f11 upstream. After returning from a VMGEXIT NAE event, SW_EXITINFO1[31:0] is checked for a value of 1, which indicates an error and that SW_EXITINFO2 contains exception information. However, future versions of the GHCB specification may define new values for SW_EXITINFO1[31:0], so really any non-zero value should be treated as an error. Fixes: 597cfe48212a ("x86/boot/compressed/64: Setup a GHCB-based VC Exception handler") Signed-off-by: Tom Lendacky Signed-off-by: Borislav Petkov Cc: # 5.10+ Link: https://lkml.kernel.org/r/efc772af831e9e7f517f0439b13b41f56bad8784.1633063321.git.thomas.lendacky@amd.com Signed-off-by: Greg Kroah-Hartman --- arch/x86/kernel/sev-shared.c | 2 ++ 1 file changed, 2 insertions(+) --- a/arch/x86/kernel/sev-shared.c +++ b/arch/x86/kernel/sev-shared.c @@ -130,6 +130,8 @@ static enum es_result sev_es_ghcb_hv_cal } else { ret = ES_VMM_ERROR; } + } else if (ghcb->save.sw_exit_info_1 & 0xffffffff) { + ret = ES_VMM_ERROR; } else { ret = ES_OK; }