From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C2744C54EDA for ; Fri, 23 May 2025 08:06:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=JD+8T3bJCGUjES7i2EeulBesA0r02esvAf4OIzHHJog=; b=h6sOkx8CNSvphj BRIjh5c6UHhqEoNW3Ah5IrWK4mw2E2Ca33ErFGgn0lnkZXxqIziwOhs5w2saOcZilVIedAKLoRlT7 hLdpQT9sfxNOAdAWhz7A6IAUlpreDnx6Rzy2NPHAqO2nIbskqUhYZ7ij6CE51QiQzkbjtc53oTF5+ 22j1egASTRgjJhnviyttLbUbx5JccVVNuMcnX/RJ3WJBiwvAvyeOI2xkL1bE75TlMpYkNGyNC510q CZDLsWbKwRJDCRCn5AWhuNtvsl9MhHjzqrjzrIX0KGe/qG8A43I9D5r4KSRJhKQjZJjrstHxTvac8 HmqA9px7fskwnunCzhfw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uINQf-00000003GGG-2F6A; Fri, 23 May 2025 08:06:57 +0000 Received: from mail-pj1-x1031.google.com ([2607:f8b0:4864:20::1031]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1uINFD-00000003Ef8-2ZqQ for kvm-riscv@lists.infradead.org; Fri, 23 May 2025 07:55:08 +0000 Received: by mail-pj1-x1031.google.com with SMTP id 98e67ed59e1d1-30ea8e2bbaaso5556069a91.2 for ; Fri, 23 May 2025 00:55:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1747986907; x=1748591707; darn=lists.infradead.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=Wkz5btPSakbSGWg9/hz+J+zFRiWVxpXranSpFqzg2V4=; b=dGNm0ULVRiPzoEHD9yvXd8lfgjlImTy1XFSmxwlW3ZNQIHRLv440qwG5PEmQMxze1D OsFkA6HxUZIoU8pJhYisS0s8wUQiMEy07tlwgxQ/OHLMKEDYnbPkLf9zQe3QMnamDFmu 8nwEqaqMTpHnX7JUzpQTx1By/j09kGeknjkMd3lAH025xNgxKAr7D2TRmtptRPS2wSWC 2DVhfqSINGajSpkufV7OMjT8stX1Vi3ICCJPSkeyEsCeBYJDOalDu1vR/mcDkG2cVn8G Ahwvwp4KWl1IwBVSUevo2j3o29qqSgqKxKW0zspPRSbFrvUM8+OHM7ZfnwIF9rqKTI2W X0Mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747986907; x=1748591707; 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=Wkz5btPSakbSGWg9/hz+J+zFRiWVxpXranSpFqzg2V4=; b=qJFfHyS+J4BAdhdE7uHEsphZHDVjw9wf/5m+9yK7r0D0r983xv/UIafN21JRwQaY1R 2XoZ/KLckfJ6VCWDrJDgl27e/+qccoROp3LeJbJj4Y0LOCt12CH6Mq+9ukff+JlgSNlS JgmwqYSXNDAgNTRukbkrR+r14SHtwHFqr9/glkMCOY3J4Gm8b5IMcLTe62xBNr1hT/g/ 35lueFkQ0vDQeYdwr7rkwD+Y0gH5sgA/yr5F8SGLsMT6xrTvUpZWG0w+WN7U/y0oFKWN 3HA/oMv/szmW617O2zkm4NURoMoUfeawbl0hyemIEFu/9+g/axqydbtQSSMliCZXhgMG HKXg== X-Forwarded-Encrypted: i=1; AJvYcCXLdaIR9ZSYgvg7/i/iUBZgTvm8w4vflnRNnWQAbpANBSwVvDQFCgnxz2YYLdQos3d/OKt26AqdyRg=@lists.infradead.org X-Gm-Message-State: AOJu0YwezOautkjaDD67Jd+KvCzIIY1P24Xg9Cc66A/0Haac8G1EPUKV ss1spF+vF36Gt7atRiCUMcli7K++5Isa2NTqcWRtP7/jVLdm0aLQzUC07PDZkopvBH2Bc+lp4ca PWqHwILE= X-Gm-Gg: ASbGncsQm0dHFiLziUDbWieYoP9Vdrows0scyL+ZLgZRFcX3eZvg5+FFEX6OtxUhAqx Zvo7L3ecKQSbISEZydUMe+pOtMD451SROzYiC7K5XuBSu6BYj0/WoKIBKxOsARM4nuAMugQ81mi 9yVSGY1/TLUyEMFssuC5iYeeaCf+iKEuSUOUK6zO1lbNyuvWtW7neYJQjHHRwonmcuGPUNR0hlj vt0mpeAH1ELXYtVkPQt7M/Kpv4hGc3OAHOf31NxyiBOyNqIummtoGOsq/U7v8fiAXvmunkgdhcE 8WgdY+JUnNq9+p1k3bRF9v7dokoXQF4FTdnTqSOQc+ymqALFrzuHwxTZSTf/pqo= X-Google-Smtp-Source: AGHT+IEPFnlMv+SphSbT2qlgzvzr5e4D7932gMeT71Z7fVhumTSN0YsgZG5uZjC/arGCx/5gT/nsCQ== X-Received: by 2002:a17:90b:1ccc:b0:30e:823f:ef3a with SMTP id 98e67ed59e1d1-30e823ff012mr42546168a91.30.1747986906641; Fri, 23 May 2025 00:55:06 -0700 (PDT) Received: from carbon-x1.. ([2a01:e0a:e17:9700:16d2:7456:6634:9626]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-30f36513bb7sm6767204a91.46.2025.05.23.00.55.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 May 2025 00:55:06 -0700 (PDT) From: =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org Cc: =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , Andrew Jones , Ved Shanbhogue Subject: [PATCH 2/3] lib/riscv: clear SDT when entering exception handling Date: Fri, 23 May 2025 09:53:09 +0200 Message-ID: <20250523075341.1355755-3-cleger@rivosinc.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250523075341.1355755-1-cleger@rivosinc.com> References: <20250523075341.1355755-1-cleger@rivosinc.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250523_005507_659935_A4F1FAAA X-CRM114-Status: UNSURE ( 7.61 ) X-CRM114-Notice: Please train this message. X-BeenThere: kvm-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "kvm-riscv" Errors-To: kvm-riscv-bounces+kvm-riscv=archiver.kernel.org@lists.infradead.org SW4gb3JkZXIgdG8gYXZvaWQgdGFraW5nIGRvdWJsZSB0cmFwIG9uY2Ugd2UgaGF2ZSBlbnRlcmVk IGEgdHJhcCBhbmQKc2F2ZWQgZXZlcnl0aGluZywgY2xlYXIgU0RUIGF0IHRoZSBlbmQgb2YgZW50 cnkuIFRoaXMgaXMgbm90IGV4YWN0bHkKcmVxdWlyZWQgd2hlbiBkb3VibGUgdHJhcCBpcyBkaXNh YmxlZCAocHJvYmFibHkgbW9zdCBvZiB0aGUgdGltZSksIGJ1dAp0aGF0J3Mgbm90IGhhcm1mdWwu CgpTaWduZWQtb2ZmLWJ5OiBDbMOpbWVudCBMw6lnZXIgPGNsZWdlckByaXZvc2luYy5jb20+Ci0t LQogcmlzY3YvY3N0YXJ0LlMgfCA5ICsrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9yaXNjdi9jc3RhcnQuUyBiL3Jp c2N2L2NzdGFydC5TCmluZGV4IDU3NWY5MjliLi5hODZmOTdmMCAxMDA2NDQKLS0tIGEvcmlzY3Yv Y3N0YXJ0LlMKKysrIGIvcmlzY3YvY3N0YXJ0LlMKQEAgLTIxMiwxNCArMjEyLDE1IEBAIHNlY29u ZGFyeV9lbnRyeToKIAlSRUdfUwl0NiwgUFRfVDYoYTApCQkJLy8geDMxCiAJY3NycglhMSwgQ1NS X1NFUEMKIAlSRUdfUwlhMSwgUFRfRVBDKGEwKQotCWNzcnIJYTEsIENTUl9TU1RBVFVTCi0JUkVH X1MJYTEsIFBUX1NUQVRVUyhhMCkKIAljc3JyCWExLCBDU1JfU1RWQUwKIAlSRUdfUwlhMSwgUFRf QkFEQUREUihhMCkKIAljc3JyCWExLCBDU1JfU0NBVVNFCiAJUkVHX1MJYTEsIFBUX0NBVVNFKGEw KQogCVJFR19MCWExLCBQVF9PUklHX0EwKGEwKQogCVJFR19TCWExLCBQVF9BMChhMCkKKwlsaSB0 MCwgCVNSX1NEVAorCWNzcnJjIAlhMSwgQ1NSX1NTVEFUVVMsIHQwCisJUkVHX1MJYTEsIFBUX1NU QVRVUyhhMCkKIC5lbmRtCiAKIC8qCkBAIC0yMjcsNiArMjI4LDggQEAgc2Vjb25kYXJ5X2VudHJ5 OgogICogQWxzbyByZXN0b3JlcyBhMC4KICAqLwogLm1hY3JvIHJlc3RvcmVfY29udGV4dAorCVJF R19MCWExLCBQVF9TVEFUVVMoYTApCisJY3NydwlDU1JfU1NUQVRVUywgYTEKIAlSRUdfTAlyYSwg UFRfUkEoYTApCQkJLy8geDEKIAlSRUdfTAlzcCwgUFRfU1AoYTApCQkJLy8geDIKIAlSRUdfTAln cCwgUFRfR1AoYTApCQkJLy8geDMKQEAgLTI2MCw4ICsyNjMsNiBAQCBzZWNvbmRhcnlfZW50cnk6 CiAJUkVHX0wJdDYsIFBUX1Q2KGEwKQkJCS8vIHgzMQogCVJFR19MCWExLCBQVF9FUEMoYTApCiAJ Y3NydwlDU1JfU0VQQywgYTEKLQlSRUdfTAlhMSwgUFRfU1RBVFVTKGEwKQotCWNzcncJQ1NSX1NT VEFUVVMsIGExCiAJUkVHX0wJYTEsIFBUX0JBREFERFIoYTApCiAJY3NydwlDU1JfU1RWQUwsIGEx CiAJUkVHX0wJYTEsIFBUX0NBVVNFKGEwKQotLSAKMi40OS4wCgoKLS0gCmt2bS1yaXNjdiBtYWls aW5nIGxpc3QKa3ZtLXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9rdm0tcmlzY3YK From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) (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 04C2617A30F for ; Fri, 23 May 2025 07:55:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.47 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747986909; cv=none; b=ZbasHcb9zNB1HHJPefBTghkxBD1m9o6V8plnWPwbB++icx4/lqOVyScEzv7TCU+LTjEtuc2SxFysZ1eMWmpjzlQSXIlto1AJcWR6eZpeG0M/qsu9//fV05ZBs3nOoCD76klzS3nDrJTsOKTJeiEkE3H6Jf9YWID9e7eluEbtEXM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747986909; c=relaxed/simple; bh=v/eU5jGg9rZ8RkTAxtzmxVdLSHFuEH3fRJlu/EIrGL4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Gd3uFf/MuwPOtGd9khwnSHCxuDfe6cqrQwPjhUqJZDuqXH0ZuQIS+Knm18yzw6Lu8DnV2wcSDsTTnbXkoyqzKWPGdVm0BSQqtDXJhwgIRSdLb9ZHn0S0EwZalZ2odkQ8z7K3oM2MrDm4ZPQZg7BZL3iJ1KNmiPPgf9TmBpQaHKQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com; spf=pass smtp.mailfrom=rivosinc.com; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b=LZ3GNq01; arc=none smtp.client-ip=209.85.216.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b="LZ3GNq01" Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-30e8feb1830so5870988a91.0 for ; Fri, 23 May 2025 00:55:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1747986907; x=1748591707; 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=Wkz5btPSakbSGWg9/hz+J+zFRiWVxpXranSpFqzg2V4=; b=LZ3GNq01G3KRnwlrkU1jCGN2/gbg/vs8dE2arXiN92GjhzQS+HmzqRoSIRjcRd7SlA f+R838+cqN7yssiL4gLBQwU3JBf34w5SR2ca2dHF3g7UYbh0HOJqBJBAukTkmNgkZwCM 67obX3V2V2SPYMbtWOqNunkmAeZxSPNTaaYRo273CV21O062/oQiQqfXFZs0zPDt8hmd FFhz88vpOkSbfgWuMHltTOcEX0wuyu22pKhza6TfjHrOTTecVjq+YEhRX/zBotMy/QuJ KQcVTmD3Nf3mlpM+9jIVm2uGTVfKzFIAWrZKv9KPlJU4dsvU6sSUv+MN0RGB67XK6atG EnOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747986907; x=1748591707; 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=Wkz5btPSakbSGWg9/hz+J+zFRiWVxpXranSpFqzg2V4=; b=WQcMuar3ER0JH22wgZ84qGcwqfaJD2ESbPU9TWPrp0P6tStvrzB1syiAvL/7QNMu8b cT+JHbAZTpVrWTFCDCRtOfO8FcXz7Wfh/CmKEhMS9+4UGjlYZ65a2SEpc7XYMVQaIv3A DWCeOBbq8SkWmdkUnbLkYLYc8vfKztysjEFa9ntbxGyO6hBbATtrLt/1F8pC3EOWzvL5 45rtW2jltnF68+4zL2IyLRDQFqXt7xeJRDMPYts4rQSCTwDAFsH0gasDml8e5ztc8oLR BiiGneRlVZHwT0greMOeKQ+tdE2eK4U7L/Kr10kC/LBvGjY1vI99tzlkpRdKW6xsJYdR XiLg== X-Gm-Message-State: AOJu0YycmrfsrtZDSYG/oLefl3IBcEFBGBq9Sp67qN22XrbQ9U1g4KQp UNXMCFq3xQqQAyCCUGpRiU7tKPaE0kP6F/mgiXDo12HqguweUJ4ymctGhnJzffmmcZ0zAUS0LmU UO/NVym4= X-Gm-Gg: ASbGncsVAkNPq/XdRtBVwopk0GVK4F4BHki4qX8lDZWwskVgEDj+k7f3KncTOSWQ6Hz 8hybrMqLSUkvDnZ4Ja9XmyPKdZ6UaiGifkpHKYeiVXC/32sZIGZW+ic3jNonywds7gh+YSltpUT 9IHVfiah9GMVpum8K8dcmSw/KZ34Eo0yrh9aH5+2JFMw+7VRYosYXEEChs7GQHmeJQryJeGYCX8 vdaI+pzHvVqpkC1mKIXNw1SF19dvYFezajYQv1AKV1Edqk5soN5ZB7I798q2suZiQgoIudqgPAm /DLPGweNDj1kxpmx2zhLN1HK1rm2fD5wkQaGGUFZFBnbGjfQShaNQbQrTVzwI+o= X-Google-Smtp-Source: AGHT+IEPFnlMv+SphSbT2qlgzvzr5e4D7932gMeT71Z7fVhumTSN0YsgZG5uZjC/arGCx/5gT/nsCQ== X-Received: by 2002:a17:90b:1ccc:b0:30e:823f:ef3a with SMTP id 98e67ed59e1d1-30e823ff012mr42546168a91.30.1747986906641; Fri, 23 May 2025 00:55:06 -0700 (PDT) Received: from carbon-x1.. ([2a01:e0a:e17:9700:16d2:7456:6634:9626]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-30f36513bb7sm6767204a91.46.2025.05.23.00.55.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 May 2025 00:55:06 -0700 (PDT) From: =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= To: kvm@vger.kernel.org, kvm-riscv@lists.infradead.org Cc: =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , Andrew Jones , Ved Shanbhogue Subject: [PATCH 2/3] lib/riscv: clear SDT when entering exception handling Date: Fri, 23 May 2025 09:53:09 +0200 Message-ID: <20250523075341.1355755-3-cleger@rivosinc.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250523075341.1355755-1-cleger@rivosinc.com> References: <20250523075341.1355755-1-cleger@rivosinc.com> Precedence: bulk X-Mailing-List: kvm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In order to avoid taking double trap once we have entered a trap and saved everything, clear SDT at the end of entry. This is not exactly required when double trap is disabled (probably most of the time), but that's not harmful. Signed-off-by: Clément Léger --- riscv/cstart.S | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/riscv/cstart.S b/riscv/cstart.S index 575f929b..a86f97f0 100644 --- a/riscv/cstart.S +++ b/riscv/cstart.S @@ -212,14 +212,15 @@ secondary_entry: REG_S t6, PT_T6(a0) // x31 csrr a1, CSR_SEPC REG_S a1, PT_EPC(a0) - csrr a1, CSR_SSTATUS - REG_S a1, PT_STATUS(a0) csrr a1, CSR_STVAL REG_S a1, PT_BADADDR(a0) csrr a1, CSR_SCAUSE REG_S a1, PT_CAUSE(a0) REG_L a1, PT_ORIG_A0(a0) REG_S a1, PT_A0(a0) + li t0, SR_SDT + csrrc a1, CSR_SSTATUS, t0 + REG_S a1, PT_STATUS(a0) .endm /* @@ -227,6 +228,8 @@ secondary_entry: * Also restores a0. */ .macro restore_context + REG_L a1, PT_STATUS(a0) + csrw CSR_SSTATUS, a1 REG_L ra, PT_RA(a0) // x1 REG_L sp, PT_SP(a0) // x2 REG_L gp, PT_GP(a0) // x3 @@ -260,8 +263,6 @@ secondary_entry: REG_L t6, PT_T6(a0) // x31 REG_L a1, PT_EPC(a0) csrw CSR_SEPC, a1 - REG_L a1, PT_STATUS(a0) - csrw CSR_SSTATUS, a1 REG_L a1, PT_BADADDR(a0) csrw CSR_STVAL, a1 REG_L a1, PT_CAUSE(a0) -- 2.49.0