From nobody Sun Feb 8 07:56:28 2026 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3799A1A4F12 for ; Mon, 17 Feb 2025 08:45:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781913; cv=none; b=rLceXqsE4Kt70xRyH9SHrKfnpEAQEzvDsapIi+azUdrS6L/pJtooyveSWzPZz/zfKMER9jVsJlGyGy5Gacukqd7tcINmw/Ijj+GqdxuHIqJ4fL9uZAKe4/qt4Be5En7CJt/14q2PAJqlDZOph/yoWKNmD97/17+LemGp5zoP7UI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781913; c=relaxed/simple; bh=2Tut0PY2upP5Cl+GzK2sIbXrM5UY9W46/YKCJOvbOiI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=t5kvE2JVCwRq46F2PmNY+QgkPGErcxjH+JPHgDa4kKl9A2p+fOVzCOMRdFpKaP47negbmx1VspMTQNyUhqcn8UumqLYU/ldYtXrjHD7n50yyxPw7VxtCq+3BVKaSe5aKRlse94wb25asqFqLJHU5MPlGpBYKXLg2KNe1YDFokV8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=ooQ0KidS; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="ooQ0KidS" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-38f378498c9so1302186f8f.1 for ; Mon, 17 Feb 2025 00:45:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1739781909; x=1740386709; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tmOiuBasU6JQWrtvlHuH5EGMnpuZux+G/rw1YW3ZnKQ=; b=ooQ0KidSvlEn95evQDZ9cPJ/0tijkYIsvqCm0cRqZmjlEEBYTlXGtiTig5vKFw359w PVm5zzg0YWFbeEjHjLhSyKo0YihJnC7rYcJWLAb5HkzZu7ekG7gBljwblhop4XIzpkRB tJazWF3r8GxdLr8Pfpj1zObNSdDymLh2mfBpM9VKYqktVKb4iid1A7G6Dmx3OKXhMFZR YkuDy8i3FXzGorqG0TRHHwg9mpOVItvTBEp6IPuz2TT/enRIAb8AtQtuPr5h1LmUiUSN N50beiV5+b1UHdu9eESGs8+3jFOyeo+YQ0VH9pRMG7AmN9F8F2Wcc91UbxKM0Klj+TDi KdjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739781909; x=1740386709; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tmOiuBasU6JQWrtvlHuH5EGMnpuZux+G/rw1YW3ZnKQ=; b=Nm63P00AvdraQHI2zcU5WVRW1gDu6w5X358jiGl3MmtoFmcR3nXvnNxm7ZpXMFSvFi bFv5Jg0hiK7R4htDzxirRzV4wDCl9cWZt05NwNDxKL3EL6yTg83ogEf3FwpNfKZP+aRh IP9paH0caA2M7HNUC3SpJo9QTQNAUOkYjua9lghFYD0hHREly75crgUV9abJdoGFKTvo xDN2iCFkMGLuU6sfdDnWNI+nAgkpKeVxofnDvUMjz16aczhE2xSaxiOXO7KG2aud4vyN qcWKI0KpGg4gHaEjMKl4gnmqnVqpecwK3Or/K/ndhEMe5XmDAE7wn0TXjqz3BJuDgX1d bzzQ== X-Forwarded-Encrypted: i=1; AJvYcCXOp6G0sTiXprraMVrZHIljCEXe9ocTF7a1OGswJ4iAz5Z/i8gWkdj4HKtVpFM6ah+GmaQmGnkwR7EGe8g=@vger.kernel.org X-Gm-Message-State: AOJu0YyV3nJ4oG8Xik1C5HbXPwRmTEI+1v54PnZdsk1d5MMxZMk8U8na Hv7zirVeF4gHEyXCIUmPlhiNxX8qyTBOkRUPMXOwp2qIHol5poCjxqAD1vKP/nc= X-Gm-Gg: ASbGnctLAKMHQsrkY8VtcMUdqxOoWyZhNt2A5mpIdfSqdBAH9UJH35wKuUwkoA1uXbu 3ApeXZ3H7nT+OKtC1lqoW4cVW93PwE3yi6oOHafSbFg7n6IzodWxblyOehOdiy5JbFCn2UPAc9W zHYzSTdRPXGh8ImeIMpeLMnvlLTm0UbUGiReW4Gf8fgZazAx4QBFyn1jBfLg8/q4VzJonwQCx0t m0n+7x372kH6Kq8New/LVsl3yakPc3znWOsELQ9HiN8JUlMcgCPWtdMMyyN1LG2Jx/TdTYk0+KS 7m8= X-Google-Smtp-Source: AGHT+IG4XexX5u4a9ST4SKpxQS8lH/aGBNXid1q/a0drWF3aciYyLxMBoUybxw0lIHE5NbqdkQOXHQ== X-Received: by 2002:a5d:694b:0:b0:38e:65db:517d with SMTP id ffacd0b85a97d-38f33f5107dmr7035502f8f.40.1739781909479; Mon, 17 Feb 2025 00:45:09 -0800 (PST) Received: from localhost ([2a02:8308:a00c:e200::766e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38f258f8c4bsm11630555f8f.46.2025.02.17.00.45.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 00:45:09 -0800 (PST) From: Andrew Jones To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: anup@brainfault.org, atishp@atishpatra.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, cleger@rivosinc.com Subject: [PATCH 1/5] riscv: KVM: Fix hart suspend status check Date: Mon, 17 Feb 2025 09:45:08 +0100 Message-ID: <20250217084506.18763-8-ajones@ventanamicro.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250217084506.18763-7-ajones@ventanamicro.com> References: <20250217084506.18763-7-ajones@ventanamicro.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" "Not stopped" means started or suspended so we need to check for a single state in order to have a chance to check for each state. Also, we need to use target_vcpu when checking for the suspend state. Fixes: 763c8bed8c05 ("RISC-V: KVM: Implement SBI HSM suspend call") Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- arch/riscv/kvm/vcpu_sbi_hsm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/riscv/kvm/vcpu_sbi_hsm.c b/arch/riscv/kvm/vcpu_sbi_hsm.c index dce667f4b6ab..13a35eb77e8e 100644 --- a/arch/riscv/kvm/vcpu_sbi_hsm.c +++ b/arch/riscv/kvm/vcpu_sbi_hsm.c @@ -79,12 +79,12 @@ static int kvm_sbi_hsm_vcpu_get_status(struct kvm_vcpu = *vcpu) target_vcpu =3D kvm_get_vcpu_by_id(vcpu->kvm, target_vcpuid); if (!target_vcpu) return SBI_ERR_INVALID_PARAM; - if (!kvm_riscv_vcpu_stopped(target_vcpu)) - return SBI_HSM_STATE_STARTED; - else if (vcpu->stat.generic.blocking) + if (kvm_riscv_vcpu_stopped(target_vcpu)) + return SBI_HSM_STATE_STOPPED; + else if (target_vcpu->stat.generic.blocking) return SBI_HSM_STATE_SUSPENDED; else - return SBI_HSM_STATE_STOPPED; + return SBI_HSM_STATE_STARTED; } =20 static int kvm_sbi_ext_hsm_handler(struct kvm_vcpu *vcpu, struct kvm_run *= run, --=20 2.48.1 From nobody Sun Feb 8 07:56:28 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7E7A41A5B9F for ; Mon, 17 Feb 2025 08:45:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781914; cv=none; b=qvJxIaoHREefk91mORdRR7GGtrzTVK7l6br/i3+JzY3/QMnerxZ3NcLneu5RSbB4jGA+nmhegABTaUV30iV93ZzB7JujX+UbSpFClksfVSmwmOuCSzX8lt7Rz6YEz13U0WfD78kuXbTeHXu+/IrDqMn7cQ4LyYVcOp11O90zHJI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781914; c=relaxed/simple; bh=X2YvBk0sQWUhmaaDDWvnziv02HZWlNRSqMxaaAdvPBo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FwSgK+uczhf7aa0WfzUweWx/hJnYgJ/z+qf3j31tghRzx1VPOer9eqMMsjEu3cxaW8C7HvuORhTlfL0Cac+kK90ncxAjfPAqw2Er5CRXVZO2UnofvDKOlWk5QxfukPbbgltdRXycL7qv/R8HRu16/db/V6OrVF4sgG0VScozM6A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=mRc8ITRU; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="mRc8ITRU" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4396a24118dso25579855e9.0 for ; Mon, 17 Feb 2025 00:45:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1739781911; x=1740386711; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JiPZGt3cqKuKVygJ0gOXQMkedPlfCXA7o5CUpSUfKvM=; b=mRc8ITRU8dzxN4YKqZeOQll5vZ3CKnJm3ZR44ApEIoqTODHmdPMgD+lkb+agsdxzqn EdHlWbMPym3AaMf3OWuK2eX7HuDUK6fXIgK5baOfGeAbLZLlv7Eoq9WT7bIKVOpw1YGG BsjL+1GXKXFReZnFkSXr+D5QfCkYyEOi8TwNAioLJ1RCBE7h7JZycLh7+Nc+kfNP09kh VyUkeQBXtJ4AItRekxMvRblq/b7kRwhXA+LMmF3pejVdnsLGhJKs6No9e3AJqFqEA4Jl jrAbOBelFsXau8c7BqETgh1NW2+BzYF7gqFo2ia3N1y4erYLz794uWjdiP+ucG4yjjJg wAgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739781911; x=1740386711; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JiPZGt3cqKuKVygJ0gOXQMkedPlfCXA7o5CUpSUfKvM=; b=k/wgB8f3k0ypDVozKeA8f/R7lGEawHrJVVMqubKFkm5kDt7dx0Um2Q2hgtnOiY8qo0 ZL/X7X5Av6Nwpkb6OfzH44nyDlqUymCw1pUZYxonazLsxZKXo8pSx58CcrEXn0UeFDIv 4Etr5hq91urLiCmYueh3r/7ARH90jVZr4HJM03d8Ya2EeQMtIQ4xpZnw+Sw4oJD+LTaE qQWoQCq0IQktcMhvG779iCrWOkG3EPcqGaNU6GeKbFvD7HyDsca/Rj3vwrb7FgtC8OBg Lj258CgqxYYvicdNjirVj68lvIpLXBDKeQ/cCXRZjcSabagxp45H82QhSejJDJ6XkwRN V46w== X-Forwarded-Encrypted: i=1; AJvYcCXQgpP7l7Fy7qkO/4uim604FR7/iIh3Vw6S0fVbCxrOECSnisSmMXynmfg782/c1Kh34LZ4OXYh4xHSOVg=@vger.kernel.org X-Gm-Message-State: AOJu0YxbMDcAMglAgZHzkPuczfdzLQ4KpeEi0CZyKdjDYPd3Q6MaN4LI 6HmvBJObzvDQGqepGIadcYMRQ/e/Sp9RkTLbjPNm1lcK6NE3/xKkp1ICwIU/90E= X-Gm-Gg: ASbGncvsm+SuY/4OyNFBwD7uZpb6riQsyYzrbAf9RUpUbd/vT6TixlUu4VQeBq6RhIs 06yvtmlF3Hdo9WZvasawjD1HwJPgkautb+CyI8fCWYTwq6Let32o4rsFN4e1k0VSg3sdV/l8xSK QWQcK8j9aHifCUTlrdOTBHYHTkE8RSIWpxIgQnV30UqiBiiO9KivbLYM5lFDzxU2sMTg7er6T4g 993AXRim3y6uPp/0NH7HqtEhcddmBhkW5iGYbpVtOejhr6zf+ea6iXYYWi3m5sm0Khih0RMgjPT Flk= X-Google-Smtp-Source: AGHT+IE+AUAR1iy2Ln8DmzcEm5nnGqOi/Plq/QkgSq3ISWZGeoiGgqYDSZCBPokxQUbiUvFLMTErfQ== X-Received: by 2002:a05:600c:1c24:b0:439:6304:e28a with SMTP id 5b1f17b1804b1-4396e5b56e7mr95001465e9.0.1739781910716; Mon, 17 Feb 2025 00:45:10 -0800 (PST) Received: from localhost ([2a02:8308:a00c:e200::766e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-439858741e9sm14517775e9.1.2025.02.17.00.45.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 00:45:10 -0800 (PST) From: Andrew Jones To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: anup@brainfault.org, atishp@atishpatra.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, cleger@rivosinc.com Subject: [PATCH 2/5] riscv: KVM: Fix hart suspend_type use Date: Mon, 17 Feb 2025 09:45:09 +0100 Message-ID: <20250217084506.18763-9-ajones@ventanamicro.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250217084506.18763-7-ajones@ventanamicro.com> References: <20250217084506.18763-7-ajones@ventanamicro.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The spec says suspend_type is 32 bits wide and "In case the data is defined as 32bit wide, higher privilege software must ensure that it only uses 32 bit data." Mask off upper bits of suspend_type before using it. Fixes: 763c8bed8c05 ("RISC-V: KVM: Implement SBI HSM suspend call") Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- arch/riscv/kvm/vcpu_sbi_hsm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/riscv/kvm/vcpu_sbi_hsm.c b/arch/riscv/kvm/vcpu_sbi_hsm.c index 13a35eb77e8e..3070bb31745d 100644 --- a/arch/riscv/kvm/vcpu_sbi_hsm.c +++ b/arch/riscv/kvm/vcpu_sbi_hsm.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include =20 @@ -109,7 +110,7 @@ static int kvm_sbi_ext_hsm_handler(struct kvm_vcpu *vcp= u, struct kvm_run *run, } return 0; case SBI_EXT_HSM_HART_SUSPEND: - switch (cp->a0) { + switch (lower_32_bits(cp->a0)) { case SBI_HSM_SUSPEND_RET_DEFAULT: kvm_riscv_vcpu_wfi(vcpu); break; --=20 2.48.1 From nobody Sun Feb 8 07:56:28 2026 Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 883E41A83E6 for ; Mon, 17 Feb 2025 08:45:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781915; cv=none; b=n19EBLelx8vV14DuH+FBmt+Focpxe236Hf9syk2ZeM4KuzcNHIB4tKEg4d9WIselG5dTxn36CMZD8V2X4X61XE+Pbk6IjS6AO5BdqSxi+1jUzhD+6jEU5YbdEQ4Z8yeAR8dGoGXDLVG0uROy/oZ0W1XEG+im3Hvy7rV9+6E0l44= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781915; c=relaxed/simple; bh=QoNKwm0QNeOBdMCU6xE83bRH5pRe22ZWzqS6Q+iNQVI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=l5NdnxSidMluFUsIXPT2VaedJoTFipaZL9YDmSqR5wkByy3bqjq/kYVZUacSJfYKju5sbgBnAa+d4QCAfcUANrvUErhcfRrsYHEaHloZTqfS5W6q7yjow1biuNN3+iumF2Malh8W1ys3k0eESRnwQuCUfF4VBXdr1KhLqlrW5mE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=dBElo0Sp; arc=none smtp.client-ip=209.85.221.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="dBElo0Sp" Received: by mail-wr1-f53.google.com with SMTP id ffacd0b85a97d-38a8b17d7a7so2276175f8f.2 for ; Mon, 17 Feb 2025 00:45:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1739781912; x=1740386712; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VZ3VO18adCEYhhZu71Kqt+W1Lctj7LPPm0C4PWap/Pc=; b=dBElo0Sp4C7qWDmXAnCqqCNvTMgnvRre1PgYs/YrLAtnvySNLhwrSJZInnRGkQJLUP W0SskwmSjW26EaYVtk0VHvJ/bM9e0XY2VMUlUAPeps3KXn04RBmHxAXR8b2ZmOkR2b3U 4WqpGQ5PrecGob4EaoMH+wLoOMZtuBdYM0iaVDLy30MVS2yGS5/o5K5tmQND5B6McvJW o+PZn5wyMs0WWhqYMuO54TXTauAzDLaXIkRWEwIIUWSs4BpZR7ogVA9M0mIwmiO8+/D9 A1x+eseCUL/jIJD2akcBNqyteNrMsAThv3VjFFPeOeR4YpZMWdbwMi8dmoPu0CuyVe4y Hpjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739781912; x=1740386712; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VZ3VO18adCEYhhZu71Kqt+W1Lctj7LPPm0C4PWap/Pc=; b=sB+pICcOVpSZOoxwlhYb5+HfB/xpTCHs+HGG66Z29QaDtCQjgn+qxgNeaNQaG4eLbp uRb+l3SwAy5UDzjX9BI9+s5jg/DL8q32qwAFhXYgh9SHBHtgx8jOzkON0W+Ziux4WSaV u8xh6n7fxlZ9b/BSRXC4I2o4uIEoZf1dRMrC/TFT1nYUAQJlvyFVJhQHdYv9zt1WHDBe qc2fD6RuPZh3wcfXoZIylT+XkpuhIixgDNee0fuo+IFUegYJcpPUWZRbQlkkE+S7qPZf kNGXQ31G3adhdFMB5aBKbNN4MlDtEgxQv+bp1o7MBrqBDVS+SEJQVahE1GxweCZmWuFc LZPg== X-Forwarded-Encrypted: i=1; AJvYcCVwtVogfS4kIeMh+XZtkFLjp3HR2LRqzjKh18wGKvtt0wu8ljZ9JkjnIMUrEJuZwrzMhYiiPXW0ATQR08Y=@vger.kernel.org X-Gm-Message-State: AOJu0YyMMB/Dv1fTXgtSjKKwYwh+DVczrzcaVE9HnHPejupQqmL94P/8 sOQ4kYGMQwhvtsMC/0WGX4RM9WVm9RpDBTc0qbAvaJ6d0wlwF6U0dQMmkM2fXEs= X-Gm-Gg: ASbGncseT2lSPiWL0QrRdMqTtDraSpYiLXeEEayDD6dHLECTkfVYSY/nX4WZruUmLgU 8nZ1gkRKdefPVKWEbaFZlicF5RHVzMhvkBZO0jrw2K/3IPihzSQVj7ZmfKlWL+Qv9CEoo/gIz51 WQc0Wu7xmevMCBYCdJMqXCfe1VTz2m4MkdFxy3/fXIJqryjv4wzSz9VLDYLUpELXHDs0d491g0N uLNF3pM84oHaXxtGba9RPQdi3DWIuB1l4tEUvtMtltKmNdNfklvomanwzd5IMHUmR023clHlIz8 RrA= X-Google-Smtp-Source: AGHT+IFjCjQDRbtQRRPY7ND3UbrR6FOcJiCBfSPf1KsHHS/VGqmXJkoBgEpraPdPyIlzSWNaqsOAIg== X-Received: by 2002:a05:6000:1548:b0:38f:4251:597b with SMTP id ffacd0b85a97d-38f42515b99mr2778376f8f.8.1739781911976; Mon, 17 Feb 2025 00:45:11 -0800 (PST) Received: from localhost ([2a02:8308:a00c:e200::766e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38f259fe1efsm11711548f8f.97.2025.02.17.00.45.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 00:45:11 -0800 (PST) From: Andrew Jones To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: anup@brainfault.org, atishp@atishpatra.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, cleger@rivosinc.com Subject: [PATCH 3/5] riscv: KVM: Fix SBI IPI error generation Date: Mon, 17 Feb 2025 09:45:10 +0100 Message-ID: <20250217084506.18763-10-ajones@ventanamicro.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250217084506.18763-7-ajones@ventanamicro.com> References: <20250217084506.18763-7-ajones@ventanamicro.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When an invalid function ID of an SBI extension is used we should return not-supported, not invalid-param. Also, when we see that at least one hartid constructed from the base and mask parameters is invalid, then we should return invalid-param. Finally, rather than relying on overflowing a left shift to result in zero and then using that zero in a condition which [correctly] skips sending an IPI (but loops unnecessarily), explicitly check for overflow and exit the loop immediately. Fixes: 5f862df5585c ("RISC-V: KVM: Add v0.1 replacement SBI extensions defi= ned in v0.2") Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- arch/riscv/kvm/vcpu_sbi_replace.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/arch/riscv/kvm/vcpu_sbi_replace.c b/arch/riscv/kvm/vcpu_sbi_re= place.c index 9c2ab3dfa93a..74e3a38c6a29 100644 --- a/arch/riscv/kvm/vcpu_sbi_replace.c +++ b/arch/riscv/kvm/vcpu_sbi_replace.c @@ -51,9 +51,10 @@ static int kvm_sbi_ext_ipi_handler(struct kvm_vcpu *vcpu= , struct kvm_run *run, struct kvm_cpu_context *cp =3D &vcpu->arch.guest_context; unsigned long hmask =3D cp->a0; unsigned long hbase =3D cp->a1; + unsigned long hart_bit =3D 0, sentmask =3D 0; =20 if (cp->a6 !=3D SBI_EXT_IPI_SEND_IPI) { - retdata->err_val =3D SBI_ERR_INVALID_PARAM; + retdata->err_val =3D SBI_ERR_NOT_SUPPORTED; return 0; } =20 @@ -62,15 +63,23 @@ static int kvm_sbi_ext_ipi_handler(struct kvm_vcpu *vcp= u, struct kvm_run *run, if (hbase !=3D -1UL) { if (tmp->vcpu_id < hbase) continue; - if (!(hmask & (1UL << (tmp->vcpu_id - hbase)))) + hart_bit =3D tmp->vcpu_id - hbase; + if (hart_bit >=3D __riscv_xlen) + goto done; + if (!(hmask & (1UL << hart_bit))) continue; } ret =3D kvm_riscv_vcpu_set_interrupt(tmp, IRQ_VS_SOFT); if (ret < 0) break; + sentmask |=3D 1UL << hart_bit; kvm_riscv_vcpu_pmu_incr_fw(tmp, SBI_PMU_FW_IPI_RCVD); } =20 +done: + if (hbase !=3D -1UL && (hmask ^ sentmask)) + retdata->err_val =3D SBI_ERR_INVALID_PARAM; + return ret; } =20 --=20 2.48.1 From nobody Sun Feb 8 07:56:28 2026 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 160301AAE08 for ; Mon, 17 Feb 2025 08:45:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781917; cv=none; b=ERbiNoyqTVDVg9prJRIXl6quUM0TGLe6S5VLim6TPE9DOMXJT5gUSUqIv5N8de0tfo//SHRpzXwpR++3dNFyCsML/EIJjC7j5OT9sTa7eMjTXlAxceG9JQQvLuHYDjcE099qSe255yclLHfwN3k4RfAG56CkaLl7iSqhxN4Gi+o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781917; c=relaxed/simple; bh=TsyxZ34/uk8jH+7pi9gkNKFwME87qom8rRAB+x7I9U0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Z/SaqRE+nOHyOc5q5xM49zXvFNU3bIkp048stzcPghBk6fI423kbY6LXwdUp2Qxf8trRaZOegXswpfM3nQodQqdIs9j5VMCeAyax1ElRTdibMhCPl4K7AzMmUEUSnZ3TDBfMXH9c7pQffX79OovhDF9c6ldvHoMfJ449FPPLj8A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=P7a1/1M1; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="P7a1/1M1" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-38f1e8efe82so4454594f8f.0 for ; Mon, 17 Feb 2025 00:45:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1739781913; x=1740386713; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DPqGeqDxSe+aOIAEww9m1M//H8GA90MJiJy6W/MxoXw=; b=P7a1/1M1pYDRLeKVNPY0ep4MJaHT2Jhcs8cF7xKDEaPngx4NcBtJk4h9uv8HlC9qVc S6vHpkjQrouh/7iELXVSacCqyRbmRlWBpBC/7z+oQuTcS5zrAufDChgovbV+AhZ7Wk81 IKmi36GG4iWtQxsN708WH4RSlQGKiQ9XhcQnA3+95ANm9CtOlqTKoQHeyVNQOC2ZVVrv 1ZqevJCTwgYCUQ+j1JVEewKVVr7dEkDhGZa44yBcSZwJBaGjC89Kyzg974EmymOTRMfS zSUXrjlg8O5v03KqwMdig2MkBVNUxg/HSZvCezaa8H0Q2Z2iGxO1NlCELmdmSEO3lq2y mBaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739781913; x=1740386713; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DPqGeqDxSe+aOIAEww9m1M//H8GA90MJiJy6W/MxoXw=; b=NcEQWnqLz2kGn6csZUBx2HCAHmIKJwYYp4+HEoZ336u25SnsrVXRXL4MDxWNbOBvPX LX59sH1pkNOEPaUXK8Kz8hiAPBQtd0ZYaX3cmmINIkKeTyg6qD0ySmJFeLPbEWTAoap6 OTnWlcd6fcYqURwTLVGAkXGbKAtyRHkr44Um8nvhxJY2oW/274vb6t/R35OGntgSwvxX GrFsBo+xktMxXXWzUxjuEiNDCiP3m5mshVdm09iz3tgBiBDqXKrWGK+9vH1lGLHaOFa/ B7egtyPimu61btGZMaKWUBFExTvwNqPFqVe8xKbMC6L1UPiI2ELU0HSDrVubWYl+zQtt um7g== X-Forwarded-Encrypted: i=1; AJvYcCUxCBP06kxnbtt0AYZRrlV1foYwn7ifC9UUSjTXPDZhvHK4xcIHaiCG0ltMPnP/7nA4g9298vA1br/o9bc=@vger.kernel.org X-Gm-Message-State: AOJu0YwZ+86g6hntokkGoZvyImKpsU7FS0f7X8g0IDDIO+zHxouVaqm2 dNlzPz3oMauc43+iYRtY66dOrczP0VFXCGurr1vcoqlLFp/uOf2w7o5TYa7R3JU= X-Gm-Gg: ASbGncuJVJLXdCdwkRkVu8Ry8+UdHF6oQYboOj8TwDMnUH1XL2PsSxzgezi7xl+KFwt l2CJYw/iisO3KoxzdwObGV7EPJ4eG6yUUGIquaDY7A5gr19UC+45PqvRQzjyrE2f2/07X0Kz3EF 1GwKRY4qsLtgDToj1rwP01L89gJ9ltzFAvAadDJd9ur+TkIN/YckoPXG5SBEhfUwKlk2a8I0xLd 5EGp9ChwCnfA5MKilDcbr6jpQkAFlIAs4rjPBfSI7eEBeKLLOG8/4byZVnf7iLyW62sTYvNgUTN dl0= X-Google-Smtp-Source: AGHT+IFw2SQlG3mEiHsZKLXfCIe42+z2FtTbwXKzNb64tTScHuV6pXuwf02llElP/bUJfKsa7cfpqA== X-Received: by 2002:a5d:648b:0:b0:38f:31fe:6d12 with SMTP id ffacd0b85a97d-38f33f295f7mr8268862f8f.19.1739781913174; Mon, 17 Feb 2025 00:45:13 -0800 (PST) Received: from localhost ([2a02:8308:a00c:e200::766e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38f258ccdccsm11661079f8f.24.2025.02.17.00.45.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 00:45:12 -0800 (PST) From: Andrew Jones To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: anup@brainfault.org, atishp@atishpatra.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, cleger@rivosinc.com Subject: [PATCH 4/5] riscv: KVM: Fix SBI TIME error generation Date: Mon, 17 Feb 2025 09:45:11 +0100 Message-ID: <20250217084506.18763-11-ajones@ventanamicro.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250217084506.18763-7-ajones@ventanamicro.com> References: <20250217084506.18763-7-ajones@ventanamicro.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When an invalid function ID of an SBI extension is used we should return not-supported, not invalid-param. Fixes: 5f862df5585c ("RISC-V: KVM: Add v0.1 replacement SBI extensions defi= ned in v0.2") Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- arch/riscv/kvm/vcpu_sbi_replace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/riscv/kvm/vcpu_sbi_replace.c b/arch/riscv/kvm/vcpu_sbi_re= place.c index 74e3a38c6a29..5fbf3f94f1e8 100644 --- a/arch/riscv/kvm/vcpu_sbi_replace.c +++ b/arch/riscv/kvm/vcpu_sbi_replace.c @@ -21,7 +21,7 @@ static int kvm_sbi_ext_time_handler(struct kvm_vcpu *vcpu= , struct kvm_run *run, u64 next_cycle; =20 if (cp->a6 !=3D SBI_EXT_TIME_SET_TIMER) { - retdata->err_val =3D SBI_ERR_INVALID_PARAM; + retdata->err_val =3D SBI_ERR_NOT_SUPPORTED; return 0; } =20 --=20 2.48.1 From nobody Sun Feb 8 07:56:28 2026 Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1A5711AC882 for ; Mon, 17 Feb 2025 08:45:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781918; cv=none; b=Caq+x2ALPMK6bloNEHQ02rk0/IdIgbiKJdUYpLbPc4hQnOaIhRAR89pMwL/lhOrplGh5ImDcDuzzWxQ0pL/JpU6T8PXRaoVZ8t19lqzrSG7ktAUwbwgh9VMYqhnVoNf07FqIQ0cOtY6y+CwNnm6rHDmdNid7qE0gf+hd8Tbr7uY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739781918; c=relaxed/simple; bh=4KWL7WT4m2P9Gzuj6XBNp3VWAe3nw+1IhcUCc4X7DHc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EzEFioBMInTKhe2KuA6JsTHPQUcRqFY3UWbr+nOPLaW+CnP1CGWjZLfScZoOKTkKgIg9VOtGc6r7IVStEIUFKv9H30o2oxjrmtrf6NwnwXNR4CRCz7m49XrQynrHn9Ww5FYHJamTZhvOqb5EAS27avG+Oh4JCMHXD1DpZFCHUxw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com; spf=pass smtp.mailfrom=ventanamicro.com; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b=CxbrPuFE; arc=none smtp.client-ip=209.85.221.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ventanamicro.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ventanamicro.com header.i=@ventanamicro.com header.b="CxbrPuFE" Received: by mail-wr1-f42.google.com with SMTP id ffacd0b85a97d-38f31f7732dso1285300f8f.1 for ; Mon, 17 Feb 2025 00:45:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1739781914; x=1740386714; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tUiohrMXynF4IhELzrFmGh0geLQ0Ng2lOgwpKuwejQg=; b=CxbrPuFE5cerjU+oX0UCAN6SJlWfaT4dtNFADNy9//P0fK8FV1y/bzJntSwlQD9wSt Yl34LsKS91cH8ma9PYaSo1qsY99yz9TPxslCvW0ZaJU3tWX+eRV2pIHwqLkLT9VGmaYH molh6ZwTLG2WPSnjSJbsTiB2ZBvuQqac0i12lE478Uj6Edvf2pZa8wuE70P2kRRy3RPu n2s+igJ6YDEQvEHa9XDlFGXE0K2VkE3tnOynClSCw+FKiObkJi+vf2xIpkETdo7VY1qR vgtNcK2o0bgvVTuweXHt9cHvGH1lZHOVSVhtp9040a1hL95uO/mBuf1IovF8qoWs5mCE 3MKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739781914; x=1740386714; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tUiohrMXynF4IhELzrFmGh0geLQ0Ng2lOgwpKuwejQg=; b=NwAKD3ct1AlRXIkUqCh/fA8IF46bGJMNzPfTVSnU6d4HXYyXGtvP1WbThPfjv4JeGo xRbCkqAHLG7VYl4SLqcq+gmPkRcsKn74oY3UhBYYUNncltMOuL2MFJUAgWsJI2guBt7w gFCwDthvREP0LX7IkIajKpdiw3ZSZjrzPLj2RXPqGZVEwQeMVCZXo9xoy4UG/GMvoYVw IAjqIDUlV2JnwCyV3MqnccD1FmGhZ1lhcPdfETr417MCFnxM62m7yhZUjcyiL0vPUn3N 6pxnEh9loT6vuT06U7TRNP9C1/msXqc3Tifwd1rXJ9+BxPmNcU4Z2h3hu9AA8Kw/AK9j FNYA== X-Forwarded-Encrypted: i=1; AJvYcCUNFct5XHysseOvJ/qv8s7HGgK5Bp9AGmv87ltmX2tb7sS7UhJQqCdOTSIQmmJ2+RVhsU/65MZkOJKSoCc=@vger.kernel.org X-Gm-Message-State: AOJu0YyIU4U8bVr1eRpLPz8JA7W5o7Y46WLGW5vuVzmLpX0yWpwH2rfa /Xq1IJAy1AxTloxnnir2X+TIxEbFOl5+My2qK7BbnWnHXZE607xLB+p50wRlbjI= X-Gm-Gg: ASbGncsml7pgohSbtNpV/mbKbFApL9priE283T8kerN6gA7JLlPbwp7FFtI6E0TAYP4 yyMJaPIMHSI+Ig4VTkQny+tZSZshF7KjmfFamKEPR9kpaaN/XwQUvHwG6K2Yg+ZsCMTT9ujYTst 30Pvi+WZR1sWdZKfVU8+uQx6Lklvvkv9H2yxO2jd2fxpK+P5ymMjpMUM/i3SlXGADMWpTKWl/nL lVJfwr7w2+rAxovqsgW/kBJu53qebHxL5geGZ6mZxfRpu+tpGmOzvJyP0xuMXty3mvNjBZ0e1JM gCA= X-Google-Smtp-Source: AGHT+IELeloq+YGu7jeWFNzVErrIwYQyO3BkZOQqDo2NauOC4G+f26bXlMmY85lR2Dzf3d+ItLp71w== X-Received: by 2002:a5d:64a7:0:b0:38d:ae1e:2f3c with SMTP id ffacd0b85a97d-38f33c2886emr8174108f8f.25.1739781914336; Mon, 17 Feb 2025 00:45:14 -0800 (PST) Received: from localhost ([2a02:8308:a00c:e200::766e]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-38f258b4491sm11387499f8f.7.2025.02.17.00.45.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 00:45:14 -0800 (PST) From: Andrew Jones To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Cc: anup@brainfault.org, atishp@atishpatra.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, cleger@rivosinc.com Subject: [PATCH 5/5] riscv: KVM: Fix SBI sleep_type use Date: Mon, 17 Feb 2025 09:45:12 +0100 Message-ID: <20250217084506.18763-12-ajones@ventanamicro.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250217084506.18763-7-ajones@ventanamicro.com> References: <20250217084506.18763-7-ajones@ventanamicro.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The spec says sleep_type is 32 bits wide and "In case the data is defined as 32bit wide, higher privilege software must ensure that it only uses 32 bit data." Mask off upper bits of sleep_type before using it. Fixes: 023c15151fbb ("RISC-V: KVM: Add SBI system suspend support") Signed-off-by: Andrew Jones Reviewed-by: Anup Patel --- arch/riscv/kvm/vcpu_sbi_system.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/riscv/kvm/vcpu_sbi_system.c b/arch/riscv/kvm/vcpu_sbi_sys= tem.c index 5d55e08791fa..bc0ebba89003 100644 --- a/arch/riscv/kvm/vcpu_sbi_system.c +++ b/arch/riscv/kvm/vcpu_sbi_system.c @@ -4,6 +4,7 @@ */ =20 #include +#include =20 #include #include @@ -19,7 +20,7 @@ static int kvm_sbi_ext_susp_handler(struct kvm_vcpu *vcpu= , struct kvm_run *run, =20 switch (funcid) { case SBI_EXT_SUSP_SYSTEM_SUSPEND: - if (cp->a0 !=3D SBI_SUSP_SLEEP_TYPE_SUSPEND_TO_RAM) { + if (lower_32_bits(cp->a0) !=3D SBI_SUSP_SLEEP_TYPE_SUSPEND_TO_RAM) { retdata->err_val =3D SBI_ERR_INVALID_PARAM; return 0; } --=20 2.48.1