From patchwork Thu Jun 9 07:06:29 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: dramforever X-Patchwork-Id: 1641032 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=fTzmjIX9; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=live.com header.i=@live.com header.a=rsa-sha256 header.s=selector1 header.b=Zja8uBJa; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4LJZsY4VXtz9sFk for ; Thu, 9 Jun 2022 17:07:13 +1000 (AEST) 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: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:In-Reply-To:References: List-Owner; bh=gqQayQ6q7XHbOTqkmjg9pvVUbBxdlJcKIeLoQFem7hU=; b=fTzmjIX9OL9PQ5 rnCSo3jrX4oYudnPBQZt4v68ONiO+bApo3yUMQAGm/nJBJKWvN1Za5Rw423c/WT+awuyBuViSqWYZ URUpje2HCiZ8RU6bfelZTSmA1mdjP2d+kg60d+sm0EvCXStF+moD2GSXwRFnQxFzA8Ofu9n7iVMIG SULE1N0hKpVomxqS+wp+0oGu/EDiGOojm+/lQql7geWD0ERA2c7BbkjwJPXOuJheI2VqUmF9n5GvS P2rGuoiuIdRKfLPYQKL89ZjMSjKUvHL13+Ie4idPCakiDqp47oqtQ/17MIfMyF3M75cwqprY0ZKKN X6jKTgTNqqhd4dWiUZ/A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nzCFs-00HGEc-FK; Thu, 09 Jun 2022 07:06:56 +0000 Received: from mail-tycjpn01olkn20813.outbound.protection.outlook.com ([2a01:111:f403:7010::813] helo=JPN01-TYC-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nzCFo-00HGC3-PG for opensbi@lists.infradead.org; Thu, 09 Jun 2022 07:06:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kW2yFTW+ucLp74/VZejCy9CFQxoOP/TddzS4Vc4SES6FeOxJVJ6Sy2Q1SAfuHOvw5Egs5nIfwct4ZY/jdm+REUBQcwNbHDwiIEZbuaZncjfK6M3uSjyJR4XbTF8OKjsng+duTmB6hEMNxeUwHaknlpcMzauIbWLhYJ6jbPFbVO6jyP1kJWwaF0u60kPl1Q3upFM1q2r3LedeCPk2WODONte0bFfD5Z5zfjy0qH9cHvEy9ZH9ESMgSUOzYXn706AyjHY1+CPZ9CrHdKBQMUlcZLts/tCbtDX08aUrSHfz0vJ4iYrGd7Z0tznkNmwNiOw6fWDCIEahBzDWZaPVLkOobw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JfYqVispToOeyiBaEpxG/XieaZJnb+Ow1Yq7LjPwuQ0=; b=YAivA4TLskKDKhTzDBs9ejw1KPdiBN+pv8MyN77HegNjdK2jLlkFaFtz3yz1GM2UIY8DhxO27yYx7ksEj8APYhwfr2dfIes3ofZ1tQLCy5R31yJy+cNTXJFU9bluMBWCrpT8QXAtwwhtMWh8PKTUfFPyFs6N2GbE9blyR0W2U+qCjbNKZlZy7gEsD2TxwHdZe7W9aNeEaomwwT8KmVrmXZ1EKGYdIBjYXFz9YxEc6AhL7ZdeO8JbKm2nJyfDZAE+srLE2kbM1kUNI7Z3vO3Wcrdvl4mzFF9xbqkGeFDcr3gr/sU9IwUWVS+QNXjlxCS/QODgZvtVMMLSTH+m9TIKuw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JfYqVispToOeyiBaEpxG/XieaZJnb+Ow1Yq7LjPwuQ0=; b=Zja8uBJa6EMlz0qvQ6iHy/Ewi4znqoXHTJI18qVHkxD6gfeaqQra/tmTstKzhhKEOmcVAdmvpGA41YE3PxcS5RvHUCCNelAGfGVAGgxUTxj53VmgDg3RDXR3MrWHHiwHVvDYPZ3UkC57aTa+5zuNz4lpDNWYQhMQYth4ZbrxRxfv4SJS06n7OXKuxHEixZt3/C0P4i7hYGQSBCFUDGCDFShpaMBAP/dJN6lWvyfxEuG2BABU3Yc7/3+1X7KLW3/ZtX9rLmFdHI5g6uqJSg4vuLaXSWr24KoCRgF4IzkjWeTVcBZjLh3d9ta/0MH6AzshU1WA3qEPz67LSuASQ+5aNA== Received: from TYYP286MB1439.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:df::12) by TYCP286MB1396.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:c3::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.12; Thu, 9 Jun 2022 07:06:44 +0000 Received: from TYYP286MB1439.JPNP286.PROD.OUTLOOK.COM ([fe80::d46a:33ed:9885:418d]) by TYYP286MB1439.JPNP286.PROD.OUTLOOK.COM ([fe80::d46a:33ed:9885:418d%5]) with mapi id 15.20.5332.011; Thu, 9 Jun 2022 07:06:44 +0000 From: dramforever To: opensbi@lists.infradead.org Cc: dramforever Subject: [PATCH 0/3] Fixes for tval/tinst when using sbi_trap_redirect() Date: Thu, 9 Jun 2022 15:06:29 +0800 Message-ID: X-Mailer: git-send-email 2.36.0 X-TMN: [EAte9n6c3hTOms0io+unvycnTL7xn4qo] X-ClientProxiedBy: SJ0PR05CA0002.namprd05.prod.outlook.com (2603:10b6:a03:33b::7) To TYYP286MB1439.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:df::12) X-Microsoft-Original-Message-ID: <20220609070629.1095141-1-dramforever@live.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e2bc90e1-11bc-4a50-08c9-08da49e69c6a X-MS-Exchange-SLBlob-MailProps: EpEO96k6WonAGWAYIHxzt372mDgmmxv3e7Hn1nokntAgsetUG1fE9YUHLXel2MnnWylgKMhmcZKmyGctIjhubqJCd2QK9iM9EGZO99IFvtD6X62h8tylGkxwgQpsq+KGQPNcDjp5sIMZIK+fzznlhfoHzCXPJ00sYRCMqVTxjuY/vUrg2fa0nSpodNb08aVlx1nRCyzn92uqgoahH2T/5yMsjP63oDE5r4EkyzNYf3Rc2dFeTycVRKtdFXHJlQ0vOeTepfmgQjwF3QECFefphd85DWsPscgFzNTctSFRee3NCMN4g8fH+s/GgyW9XswZI6CQFk8YTb8X1SIFD/wbyI3S/c9a5qfFfZoi3OKd/c/O5aFNkthbiPBEjgan2iRAkOg9a4+jhO57UURxa2FwojVZssZfk4BMCtLJ8UFdlfqi13LwddbyWdQF7NUki3S2bWbWwv8+oqvfWYp0NZaBgz1Z62YzabSAgzA1v8R0Ej10QpBIGeIhwWujsR9Ybb05vJyvZcdAqfJDyIFZyNy2x9U9YcqESmvM2Uy4cwXjUWzSJabx0VNiGZwvUmF7SSVL4c17xbJamqGZWaVax6ToypAXmh/uxXwrM0Na553A/6uT+c5szJvTjA10fKq/gbOOMZHOV0OoQgTWeJtvEXgYHhPqLgNsiGgJBJXs9ZdvIOBgJBc6egv4LeBoUcO0P7i6M0Cz8a6Ed0lOU3OmqwsswlSPPm+GM7Tl/sMIALtc40SvIAEWf/MmK2c7XvwN6DxzGeJcHa5wqOw= X-MS-TrafficTypeDiagnostic: TYCP286MB1396:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ehmDOWd42/ceP7gyWsuZEL8IMh+/NxWnW7OIlhpNAybfN25DqlY4BJPvM1FZbeR+PVGaaip75saLvDxa53vRQFfp2ek+Ob1TFYfmk/vCn279kwvJSiMMefRGieoazk5k1BygVFNTvJ2qZR8viRcNwHAGiRUax/5ugQOrM6Nx6Zg9bbxxRPW/Tc5/p9emCe5Xoo9KzDwv9gsvNWcB/PXqLue757XpzF9U9f6oECJBNZzqU7MA/Ndzj6xdBeuP5u+dEtZKFj5CiROZzfi+N47+T+N1qAzrS9Jh8xAYwlIGsmYPLKayjBC9U2/ADbo7wm5loydhDleUysKgmuYantn9J8Cj3nAbzglsr/k8X769YKwP2TrZJ+AvLCBRofAP30z42Kuc1HqEZaAfTm8qyrBov+EHTjTpdIzrysLLC/gsMQDOnpkArHm9x5ucC+dbEd/v5K5YyC1DhgaatoXZYr5YuziubmVq596MXV9chWk7BsMYsSaOnoJXcu1G+/8h8lWRPOKFHVetHIIzmG83o5a7crXG2NHuUo6obKYX3JcKX2Hnf/e4fXm787M1+7giXizDSxrbY/ch1GD6tt/mv/s3Gg== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ToitoCOkLYZD9VXAJ2xa+8zB/IWOdmgEgZyE4fr+uMLVejim3rER9K8mXsyG5zQM0tCT3BGuL2ge1RsFWSWl5q5MQq/oLvxadZYu4e3d6U/jfwJtFl3gQ4x6ZTztKPzevOKxfKI9CsYLTzQIghQIta7lulQ1y2v/gBfKHe2B0YHL8GQBcOXIjd86ZWBd/eKNSgiqmnJomYCUl1zQ2o1BaT7ESgH5wMhYPMw+LpfJO39Fx72C04P++Qa/RxQc6qgADd3I96o0GqO2YEJPvdpVsQUYLnv8+OrLgO1q/933zHlFp5HgPAnbrEQNIcvCkFBaFlV+UyT4DAGWalwHHkhkEHVb2AYI2CFRuaSt6D67eDy5WqQLyubG7ZFOqNj+9vQJQ/lYXctkyUOYbZhYWTUCbvB7CWjgGSp8lo1RSPrjtBlivr8F3/CRpNv/qLw14tvjJgVRmAu7sZy2tGu4Bn5dQwf7I5YO+j6sZKvicvIkXAmYTxoHB0De9mBeByuwY0arGqJxHaljsRFLZS2bNRrcaVN64KWUhQl3XtHuaV/4WuTKzbLu7JdyxV1PZ288NzIVMYhlBRGIqeQcrXAwCcNOMxtBxtLXR4XhUAs40wRpuP7VyOZsTwlSXl8BjOTMpjm7NKRm1PdyoG26d1uwIxQG/8pmS2U0EIs3fvuH+BRqQ2tYUx42tXM/0s5Um/cs7zGDtkSWM3AloY24951ECn+UxWdh6WjHbRgAfHi+NyzO/SrUc1JemeEz7pmo5BtwX7vjjW44wafg1ChtjlNPqTcIcvGzBVvkY2eHsC9+MqLaVGoQzJmU0iCTgH7WuLNuSnBu1Tit2HEwYIXelFCs7Mx7v3ofHZJtHk5DeK1EHzeK5EttJ2sb+7HLlaHaJA6leHlSUd2XC6URDKPSkqXbX595oHh2Iefh76T2rGSa3Ja1g8gbTsnlI2sh/OEipUS6yehIyrg7RUQ1wzSCfxdR8N5keJ739YkFEn1BVQbmeCbEVnXpCTcNqyMCoPa+Oz4s889J9RDnXh57Bybv0dpkzkDtmq9P+GEWiYXwzw6f7OOr0fenwgTyCcScVwiFWmKKzFB8P0jY3EsWXibgtsn1eVRiJ0rtRFaVims6322yICwrUh6Vl/40oC7VCw1EjrZhBTY6j+CuOGM8LRVjf6DogeAsdxHQico3Tp+7sNlEdt7O3P0d63WRslqTL8JE3Fck8uXLS58LPUJECIXSu9vFUFOsnfU9I8cLf0MqXQlcpVifZJTUct6dNfkhqLKl8v5SzfEkE34GQ4YkP4Lex6u0awCU+rwJyoVB9xEi7jvWXSrwQFg7egKErUXcMX0ONEF27oMFoJ9W8F98vWUxGo7tU0kE73kBA7++cn5xQW9/q2GhkbvAn/huGXV7VJehyjU4t545odydKpqqHrXJ1Kjn0aspdJ+HLLXeZ/1apj36d00Qd7Y= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-05f45.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: e2bc90e1-11bc-4a50-08c9-08da49e69c6a X-MS-Exchange-CrossTenant-AuthSource: TYYP286MB1439.JPNP286.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jun 2022 07:06:44.5127 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYCP286MB1396 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220609_000652_892103_9566732F X-CRM114-Status: UNSURE ( 7.86 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: I went through usages of sbi_trap_redirect() and saw some cases where after redirecting, stval/htinst could be set to incorrect values. I tried fixing what I noticed. Note that these patches are *UNTESTED*. Content analysis details: (-0.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider [dramforever[at]live.com] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: opensbi@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "opensbi" Errors-To: opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org I went through usages of sbi_trap_redirect() and saw some cases where after redirecting, stval/htinst could be set to incorrect values. I tried fixing what I noticed. Note that these patches are *UNTESTED*. - For the htinst fixes, no current implementation (QEMU or Spike) of the hypervisor extension writes mtinst/htinst to non-zero values, so the code paths are unused. - The sbi_get_insn() fix requires a rare occasion where the instruction is fetched normally then unmapped from memory before OpenSBI can load it again, and I have not been reproduce. Please bear in mind when reviewing. dramforever (3): include: sbi: Add mtinst/htinst psuedoinstructions lib: sbi: Fixup tinst for exceptions in sbi_misaligned_*() lib: sbi: Fix tval and tinst for sbi_get_insn() include/sbi/riscv_encoding.h | 20 ++++++++++++++++++++ lib/sbi/sbi_misaligned_ldst.c | 16 ++++++++++++++++ lib/sbi/sbi_unpriv.c | 8 +++++--- 3 files changed, 41 insertions(+), 3 deletions(-)