From patchwork Wed Apr 19 22:23:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217529 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id F0147C6FD18 for ; Wed, 19 Apr 2023 22:24:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7948290000C; Wed, 19 Apr 2023 18:24:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6F584900002; Wed, 19 Apr 2023 18:24:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5BDF590000C; Wed, 19 Apr 2023 18:24:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 4AB44900002 for ; Wed, 19 Apr 2023 18:24:07 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 1C2E94010B for ; Wed, 19 Apr 2023 22:24:07 +0000 (UTC) X-FDA: 80699569734.30.56B3357 Received: from mail-pg1-f176.google.com (mail-pg1-f176.google.com [209.85.215.176]) by imf06.hostedemail.com (Postfix) with ESMTP id 51F7F180007 for ; Wed, 19 Apr 2023 22:24:05 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=ohOEHO7B; dmarc=none; spf=pass (imf06.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.176 as permitted sender) smtp.mailfrom=atishp@rivosinc.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943045; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=LXsqDGUR1sIAzl083YrDdeF8Dcz5MG5TcoJ+FCFYQPE=; b=hCoR5FiqagDs52/4/cQ6KQQhkOopCe8a6K8igr7Rvpsjj4utjlzaAt5wPM2gcpnVyoWDZD pfQxujBp3fd6KT93qnlIcP1+2JtlHPxzOH8LMXR8krS1Y36kLoK0W5rnGA7ce+x1uzzm0R kepwYWR9QCXjpx5ypVJJktyR8VXYd0I= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=ohOEHO7B; dmarc=none; spf=pass (imf06.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.176 as permitted sender) smtp.mailfrom=atishp@rivosinc.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943045; a=rsa-sha256; cv=none; b=hixLObjpDxstzX6c4lZFgKJm0mOOXNwiMqJqNJ12SKfQ6vA7S+6UqirOh68rhtDxmcgIDA cOEJJ61yKmF/XwDLQDf/V/UVK9GPXuPeCeJfpjZwYeDssT6P2qELmcCDDDpUeimxtcbfLc f44Z+h0ITGa2LNKQDakwyE+pTxeP3Z4= Received: by mail-pg1-f176.google.com with SMTP id 41be03b00d2f7-524b02cc166so67505a12.0 for ; Wed, 19 Apr 2023 15:24:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943044; x=1684535044; 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=LXsqDGUR1sIAzl083YrDdeF8Dcz5MG5TcoJ+FCFYQPE=; b=ohOEHO7BV/FHEqjDiY6pG/sbPPkvlHxUUXDxUV7dZqgZIIWVcpKe0qvs+coh7D9ZRh B9hkxCLFKh8o9nAC2rlRn7bMm1mBtWYtjnNK9pkEtJDD583cXnspj2Ze6kFtPx4sD05T M0i9ezLAErgLCl4r/YZAwl7ub1kBW72A2bCM2VN+GllxhNlhbw4174U5Fs0Rqs8lwuLx 6dFmv6DPhfk7Q0h+47Fu4cY06lgOcb8Yfc8WZoxCPJavUfQg727zdhXtl53U+ZG5ga3H Ua4k+o9Cp2yjV6jziSpH7zmCITKPG2JXN/AwelqUy5IqPzKZ18t594Y0qlAjZCJGwgwu OUiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943044; x=1684535044; 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=LXsqDGUR1sIAzl083YrDdeF8Dcz5MG5TcoJ+FCFYQPE=; b=JSQfgxOTPWuWYo8qJHhRhw66iYovg7HCmOgjLMcMuBdR4UoqKr+hUwZxBFjYf1IRQL luVfaGbRRct4MKFll0y8YDC5uj07pTklhhcIw5xZa+khnhknTeap+jGd4qdshvdZMosw Jr05z6k/6lzhxL8t1/FPBGkQ4YeE8Gm/7U8m5+wsPXbVq8nULlsCH1X+TruGCplnWyYk VsbBdi3knAWvqRvyhhjUu191YEHzklyBfr9axHpIjxfF1RGl1ymXSvzzLviqCfTWbKNp CzcgZ5em8GTO3tfwWHQyWYmbzjzoIm2V+tBvFLdDbakW9f+7iUDLDUSawXEAGjnqrZz2 QIwQ== X-Gm-Message-State: AAQBX9fdLEFU6J7OLhcU+FPBvDs+d0r7/ZkApiNiy1yPM/R7mmTVFTE9 g7nTb7wo6VJQo/bNqNeJjPEkZg== X-Google-Smtp-Source: AKy350ZHJJEltFWMtiEqeoirE/coBcaQIIAAD+T2dcklEUVhjT2GbyU5FBvkRUpdkDap1R/DwivJLA== X-Received: by 2002:a17:90a:be01:b0:247:1e30:5880 with SMTP id a1-20020a17090abe0100b002471e305880mr3727645pjs.38.1681943044256; Wed, 19 Apr 2023 15:24:04 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:04 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 01/10] riscv: Add a CoVE VM type. Date: Wed, 19 Apr 2023 15:23:41 -0700 Message-Id: <20230419222350.3604274-2-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 51F7F180007 X-Stat-Signature: darsr8n8e6non3cmz7ng1s5y3j33m1sw X-HE-Tag: 1681943045-191712 X-HE-Meta: U2FsdGVkX18CB6yOnfTunx8lhFl4bkdRE6M/P+RruMxjGiJMkuSJjTXY89RB5h56RgMjndE0KiVjfDv+n+MVvmXmkVdPkuhoDILATJLH9w5HbNtWbGEjX1v0Z2Ema9zaC2BNn7giSYJY0iAyQRg0uTEyiwFiIngvbmJzPjB27QkyaZq9UgdUr7BXhwKFJBYVuMWtDR5PdPNmO1yB50ZLqNpt8eUwMz0jUSfdH0MGqQWp1jIJRMN8QpZQpAXNavy+ELL41PHjMRVRcl8ufqdZ8Z8HDItythjNIi72fiH3zLwfI5BVc+NPCC/i7jlUnUCw/0uEvK0Li6Ds3NqbZlUkWfe4WQHA516Tt4VHGK0bf4KZn575oHLwqaBfyzZrpZSon7Y2iEirLBdlL3pTIhBm+dij5p7364rcghu+FTHvi4B2b65JrWE1uBt/Pq+K3v2j86c2b0CRwdwDqrZ4twiB4TS8ziYv+joWCTMZ3wzNh/PLLDb1kvEgT1EFubWIPmnDVnoFB1b/m6I91qpcgr14N8S2gU7N4srSWDMZzRqDOPf6shynBT0fpdSobgXMSpZqiXa61zDankp83hE+eW7k3UxfGO6CKiqGb/35EcIczDhAh2TQ/TRdx5KqSsvqCQxYrLiohTcV89VEszebioA0LK2kdM4eZXJKag4xV1aEvmZz8svp3afYlotNFdGHXgqceRb8hCe4iI5EqkRZEUj7Cpi6HMcctJossjrwMra1TsOygE2oG2j9i+6tuEoy7HioQ5ggato/BlM7WwpE2SzORw+BR0Wuzi2KqQQwCeQr3mU8UbfvMUwBJYEnda2fO17QDScdbftVDi4jCkRu6yKuYvoz7rnqgHoTA3Dv+RItoJHTNFNxjzB4ZsLOfKl0JrtGLLw+atPsalLOix0Xmk0uegeE4eKVaVRlHww2mAhIKfWbaOowy+G44bDXc8kQ473KAvk9RHT0dSSlK8zynlO x6SWqzHW Ffxjn6CVHW5/tmmsOtE6rDIHHchPn9Rvmtph9I6Y1qAjWHcjNsrCWJ1zhHtjLq5IK7sduNN1uR4piSzqmFQyDspo95WeOawxVblr4YTQ/+1Ngzp+UUK5VMvmZFEx+wg/T19lLlPaYp4o/AgMav6SF2Ny+vMcCBnIrUUop7SrOqYBWtskr1uR+iMDrYQpJob3pvihg7xGuXfqf9M8igBFf1+whOwDlQ7m6EARoCIuQcvDjmMxSiArB7JNyFkv26PhIpy2CA++Gf6arDl6XcgRvQVLgEcvZjlpX0Z0UJSWxjoTlpZWbXn51BZjPwKXUEA9HcyEBDO173qhFD54ZABdd5cNGdnrpZRo7yFw+TfxoSaEsAKaP8/pnDwYurSyR9MioTFPxbZCs+9M8+Ab/wnIfZu7XTRTCbtDAEE+AAumvu8MMGk8lf50uh4w/uj3Usqd59+6RlhXCF5Q8JWStWShPdOaV3w== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: The KVM needs to distinguish if an user wants to create a CoVE VM instead of a traditional VM. Define a RISC-V specific CoVE VM type that can be passed as a VM type. Signed-off-by: Atish Patra --- include/linux/kvm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/kvm.h b/include/linux/kvm.h index ba4c4b0..000d2b9 100644 --- a/include/linux/kvm.h +++ b/include/linux/kvm.h @@ -911,6 +911,8 @@ struct kvm_ppc_resize_hpt { #define KVM_VM_TYPE_ARM_IPA_SIZE_MASK 0xffULL #define KVM_VM_TYPE_ARM_IPA_SIZE(x) \ ((x) & KVM_VM_TYPE_ARM_IPA_SIZE_MASK) + +#define KVM_VM_TYPE_RISCV_COVE (1UL << 9) /* * ioctls for /dev/kvm fds: */ From patchwork Wed Apr 19 22:23:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217530 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 95F07C77B75 for ; Wed, 19 Apr 2023 22:24:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 30049900031; Wed, 19 Apr 2023 18:24:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2B08A900002; Wed, 19 Apr 2023 18:24:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0DB79900031; Wed, 19 Apr 2023 18:24:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id F3848900002 for ; Wed, 19 Apr 2023 18:24:08 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id C4660C01BE for ; Wed, 19 Apr 2023 22:24:08 +0000 (UTC) X-FDA: 80699569776.17.F0FB028 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) by imf18.hostedemail.com (Postfix) with ESMTP id F304C1C0017 for ; Wed, 19 Apr 2023 22:24:06 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=gbm655ZK; spf=pass (imf18.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.181 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943047; a=rsa-sha256; cv=none; b=X/ARAdMOYtfEacAOo5JBM6L43DL+NENlv585+Rj2Q9TPacKW0b2+agMwoYOcYkVDklxlKc wlav6bjR2U2G0JfLKXJqxwheTMSL7K9s3esAyRG0qN/eYbaeIBFPAb5BTLAme/PAr/DPoW xQ5O7njWQQ0dE8awh6r0r76aXHS+Bnc= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=gbm655ZK; spf=pass (imf18.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.181 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943047; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nDYPek2GW62ZjpMwmsxfE9d0xDPaKHdBMm+cEZKc8s8=; b=jwWBPrUbFOaxMRGBYlll1BPYX+mJNW1jQ7746aLClF0nTl8YMgGBCjgkngznarX6qeZYNc g7e/XIPads/lil+NABrMD2g4FtBuLvDyFgP/b/McgEN79h7EDpStnDhNsTVglRyayxyOrg cIUYDz2HWGQYCUU5z1sfBxfyEDyzhLA= Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-63b8b19901fso453782b3a.3 for ; Wed, 19 Apr 2023 15:24:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943046; x=1684535046; 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=nDYPek2GW62ZjpMwmsxfE9d0xDPaKHdBMm+cEZKc8s8=; b=gbm655ZKGYsSplRJThxaUIliJsDtxxCNHAd8Jsh9rquTj5wgjudHgZwJA550iZsQk9 VB0SQu2x2QDE7zie14SgvIe7dnOfITMaMnMjD/onrUT0al1gT1sDadgULueeivhnEmTD JNLdLb2hMXSDd97f9GLtgcoOoiKtiFWFueifxdMTSbyKE0Z6Gv5tcQoRd/Nk8sLhR8hd DGNAlG+7Czxou3KoS1S39Pu0wydKlsp73goQ0cZbb90x0/1svTeMdjxcJ4JUnBS4z1ue xceJZmumlSVFCncTt6FuOgv+xYSVDvprfYgxAUggRJ/YOlKDghslSrOk6KKM64ujkV1m 0exg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943046; x=1684535046; 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=nDYPek2GW62ZjpMwmsxfE9d0xDPaKHdBMm+cEZKc8s8=; b=Rv60U/0KWxC69NJqv16xUw7ANou6ZBrSLut0Ahxfn81l/ho402xelDNUeGK9ybpCpQ 6BnDS43lOs0VZlEX7RYdR3QbTrm4UBAk/uKAkAphJeiHNub89OcoYeOOH+5+fb8GwPda cpM8lWoPwZhemhVAFbJ5w2Yec/yql0R0cpYNz07MAe8fUPONewK20kPY+jH7hciOOL6m MlRVYxgYQCsSckFpkjpGpBfR+u59h6+E1+3mebNSsP0AqoilARp8b2rg1XMjp/8Zee8D sx4CfPJAgwhrh6au3REHJjddZoDwupi3xMfkECvZdJGzyLYVFNp0o8ZKPlQe4snOWWQV s1RQ== X-Gm-Message-State: AAQBX9dZX82RtH8yo69/BLy17Iz8Iqw1KYw2QgAV4+kQg+/J3704cr9W q59YFN6t69iCOhI74YRfcl79TA== X-Google-Smtp-Source: AKy350ZvU/B8LPyorDIQytWlfNOBgumMg9x+NGoZu6TjngTCY2lrTTdfxOrkdp5JkE0zcFgeJL83hQ== X-Received: by 2002:a17:903:120e:b0:1a6:c12d:9020 with SMTP id l14-20020a170903120e00b001a6c12d9020mr7842484plh.24.1681943046020; Wed, 19 Apr 2023 15:24:06 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:05 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 02/10] riscv: Define a command line option for CoVE VM Date: Wed, 19 Apr 2023 15:23:42 -0700 Message-Id: <20230419222350.3604274-3-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Queue-Id: F304C1C0017 X-Rspamd-Server: rspam01 X-Stat-Signature: z1iexkahh9kwsf1g57xqu85jxhhaise7 X-HE-Tag: 1681943046-110266 X-HE-Meta: U2FsdGVkX18cbByz9EYMTS363N7GU8EuQ2dl7zzNheVNUGOcNsP6FKMWQZBzbHrApmBITGCqnhCk+0ggjwdx3hsBRgo+V/jjvM1dqmhjqwD/Uh2F6uN0d/2nALl19Z3CzRhgqidthX5yT6gXFLLuF+MuvKmC4t6eSGsQJZvbUHI2BA84dvKjL8W+kONlj+LB4oSP3rCoobPqivhPhw6kwQHvE18VDDLeFDhdACfQK6Z7KU/txsPxsEWI67RPuzBXN7b4C2l6w20QKOoV6L34Or+LVkzPkPPsD1U7iIVaSMXJeNlMbavoqQNxPyWOAJTvFlV3OwDAGKQxpkEl5x+S93EPkN59+LOGHVS4quJ4o/D7tD0JdBayq1mC/v0SmnqJ305KsvRNlBsSbtQQ3eLc2mJE20smTA1MbBN849iF2F+yYDtO3hp7ZcXuA2mSzgO4SkK2+epsnnFsfWC/sGeHAQBS5I+CZy8LlX0iEkx8g6RcT2oCOpqJlugdbttrwYexD3HpEdfE9P2HosqEqiFCxpnslDHOcIhv8cDjzTt492gcoqkuJD6GDTKkWsXdUjfILfr4X41maNysR0jzu7SJbuNvhVEhBVBe+lM7n7FdeVsZQQY2baJZGfuMzbXium4qOcKmSRn7P62pr9trRot4U6dx4Z3B2qAZ4u72ItvRt5UH9tVvvNBSPw5KecQ+Vb9DA0CF/JV/tw6UUK1Q/khe+f6JKGDPXGhXB7Vstz/Klsp36dwnd7wX5AqdL4l3Qh8R7z8zk1GrJQnLsz22sNOf8u5IbT3tzX+CgxxXHfHV8XGd2huaU5kGDEHUGqeARchthkohgNxDw+FPzdWXq/cuIw5z0jNMdNeGCSxJmpmHw7SooeNm+cT5+iEf3bS7D4IrzIthPQNEkh2VwnODtsmba8cX1fFGZE5ij745EjNJmV8jqeVH8RKCx2aJx3i8Qew0veLggqShDyrUt/IY10B 7Btbr2VY T1TLbCSKvRNDc6ub1bJyifayaxTrGLw1x2/Ze+fF+P8d/0zDp0LpCwJKAkX0dpI7E7/u4ffd36iwA+MvX9VfiKZMkTWRUwmfWppQ+0SZGO6h98XFpGiNOGvbzw88qwrjWgTDTttLASr2e32JmyoHCP55iA5aobqh/653xooe+A3kU+XqIGGGLHUEZBtjKi/7lBUptS6hqKAfTUuLI3hb3SLZSKRQP1BoeftVsWeRj/jnlWKeQtoWjUCCxAbFLfYe4ow9vaO+wfT5WLB42zBdHTNsYHqaAOcpTD3VnzZEUgXPuideNdhqAunytMmzlwa0XGkxcOeRjFEWBcGJT86EmrRYOVlfyDE2c7Faa1WCJXFgKuR81iUNH2OFLbs0GCcsw3SOTJw/pfzsiKuaImmg+lXBvG5vT2nAah5FrGGTBOWvcH6Ct7yG5FJSxiFBjOZtuLVSBUVRRHk4xtYWP4kalFwcNxw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: The user should be able configure the VMM to instantiate a CoVE VM via a command line. Add the new option cove-vm. Signed-off-by: Atish Patra --- riscv/include/kvm/kvm-config-arch.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/riscv/include/kvm/kvm-config-arch.h b/riscv/include/kvm/kvm-config-arch.h index aed4fbf..01276ea 100644 --- a/riscv/include/kvm/kvm-config-arch.h +++ b/riscv/include/kvm/kvm-config-arch.h @@ -10,6 +10,7 @@ struct kvm_config_arch { u64 custom_mimpid; bool ext_disabled[KVM_RISCV_ISA_EXT_MAX]; bool sbi_ext_disabled[KVM_RISCV_SBI_EXT_MAX]; + bool cove_vm; }; #define OPT_ARCH_RUN(pfx, cfg) \ @@ -66,6 +67,7 @@ struct kvm_config_arch { "Disable SBI Experimental Extensions"), \ OPT_BOOLEAN('\0', "disable-sbi-vendor", \ &(cfg)->sbi_ext_disabled[KVM_RISCV_SBI_EXT_VENDOR], \ - "Disable SBI Vendor Extensions"), + "Disable SBI Vendor Extensions"), \ + OPT_BOOLEAN('\0', "cove-vm", &(cfg)->cove_vm, "CoVE VM"), #endif /* KVM__KVM_CONFIG_ARCH_H */ From patchwork Wed Apr 19 22:23:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217531 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 860D2C6FD18 for ; Wed, 19 Apr 2023 22:24:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 21524900032; Wed, 19 Apr 2023 18:24:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1A06E900002; Wed, 19 Apr 2023 18:24:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 01A6E900032; Wed, 19 Apr 2023 18:24:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id E4A11900002 for ; Wed, 19 Apr 2023 18:24:10 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id C23A31C63B6 for ; Wed, 19 Apr 2023 22:24:10 +0000 (UTC) X-FDA: 80699569860.30.0087AC5 Received: from mail-pg1-f172.google.com (mail-pg1-f172.google.com [209.85.215.172]) by imf02.hostedemail.com (Postfix) with ESMTP id DF6E280007 for ; Wed, 19 Apr 2023 22:24:08 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=3p9iTgdU; spf=pass (imf02.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.172 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943048; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=sx5yCGWct6pM6GpC/mvdByE459bnHS7kFRJEEmvmIAE=; b=guLj9HZiRPqCr1e/bcIC8gST6cwpBSJYccpJa4z2DBkNOXzTbNzq5IaiYdM2RV86ruFlWn Ij4m3NTwNZkp22TmckTPTjxSs6Ev/Y5FVMLYdy3AHavuGDZ4M8mBT3RihdZ8ZB1V+va3Gd sACOdwsMzE+LQHA8/RwH1FTfU4lochY= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=3p9iTgdU; spf=pass (imf02.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.172 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943048; a=rsa-sha256; cv=none; b=2+E3eiChAmANklbXq7aI32K9qt6vSuG2MR67OJYHXr79mevdq1pBq5+6YrJxlQgi4zsfcQ qIsFO6l49ksgkOjnpRenLEfGPnf+ttKlDMYxFASwC9foqsP7gRDDe/RA4hul19tqAsgyWh blI2hPY9mKJj8i7Es6htbc3siYgpjYM= Received: by mail-pg1-f172.google.com with SMTP id 41be03b00d2f7-51efefe7814so276568a12.3 for ; Wed, 19 Apr 2023 15:24:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943048; x=1684535048; 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=sx5yCGWct6pM6GpC/mvdByE459bnHS7kFRJEEmvmIAE=; b=3p9iTgdU1fM6SCFnmbdU2SRrkZIz70XAXwuZckkQOMwQBsxli9xyQOj3eelNgilUbh Ys8/7Ew5TPJfNpxVGDr0CtIGeK0FA4rEB+OIcbXgq5wyTLnVYPvSZ8aMalLarGl9SYQB 5RACL91+xtTKghPY756sehNtiuCKsCnVWuoe+lw1F03ENQxtWOfB9WS65O7GV37PILFO Dk35L2JW1UKZe1fvGcD1U01nAz5TPWWbGAHGpwD1ZT3uAJFTUyTj5jlwZGRm00f0H14O tl+5fi2Hb+F0OmZuIVTWcPUeShVBuC5Hht10Q7j0AV8S9TF+U8wIpbjtIc2XL8zQkszI EVlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943048; x=1684535048; 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=sx5yCGWct6pM6GpC/mvdByE459bnHS7kFRJEEmvmIAE=; b=ip/bdJVWkKe24YGGq4INzTjLlZOThO7OPWFOvnVFTG+zQtQw3QoAH1GGVtXgRBQzA7 OXKOswmAp+QeYrtcj++3pkfVN2vcPrk7IXJKLP/gEiQtaa2V1Xi7EES/g9SYeo5comvr I5ht+a4zPofuiCkAJssv3p7mOJQZ5f/g02a8yUPPQsgusHsAI9U4cxMD0kvyV5KrDlVD ZWNe7U27TBO3LlXWSZ07at3CcpAeCOV7IxLAHUYcBk6c6JfOALNuskAfPyE3W58gC364 +hwNjG8H3wVmx2AOqrQ1t19d7tQgZyhOIBVyginWdnOewhT85GgxG2df68LelKwSNvlU uPLw== X-Gm-Message-State: AAQBX9cvsdMMVefmrZwmBQ4FTyBanxoUDstY7TrCeHyDuXWD+olj4kg6 uet8EgVl7Dmqdrc5T5PvOvZQzQ== X-Google-Smtp-Source: AKy350YPzGRajmyQ2O5tL/h5sOqIMWA3WFpT3qCLbVNDZ6itlq+/cjeCHlrQkCoL9IBGQLSaGxxwuA== X-Received: by 2002:a17:903:2905:b0:19a:b869:f2f8 with SMTP id lh5-20020a170903290500b0019ab869f2f8mr5951568plb.21.1681943047880; Wed, 19 Apr 2023 15:24:07 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:07 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 03/10] riscv: Define a measure region IOCTL Date: Wed, 19 Apr 2023 15:23:43 -0700 Message-Id: <20230419222350.3604274-4-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Stat-Signature: p495hm3jc9rkdx8gsjjocyb6e5fiih3r X-Rspam-User: X-Rspamd-Queue-Id: DF6E280007 X-Rspamd-Server: rspam06 X-HE-Tag: 1681943048-446411 X-HE-Meta: U2FsdGVkX1/G5ZXkt+hUdwe6scIUgKZvDDf+dHKcwWKkccHJmBr5UQ6PRU2Q73Zw44HUhzDZwX79i93qxImk9HMJuG8ktpar573LhkdNgQI9riNq6DiWV5VAWVB2djLlTB4nm5NtrGSPXBYPxQoWI/WRX+p1tkqraKw5FgAHRnmv8EE4FSncB4bb/+NyrwhQVtwN0bcuLH4pfsh2sG5ajw7l2QpDvdR1dBCv2gdgUwdLYQDAogFf8bfUSu1QZsOi59Fy8NxvN5X4y15foUorHPHbwmlZZJTFZY47KpkyIMpK55hGJpYtw9nNf5mJSyipmxcgJy7k6zGXqQaVEOxK/KMoIkybn3Beo8dfDUuOjaPoXZ2MLRlHCTWLOqcioSJJ8CJ+R/H8285dO2xgUq9RWYcTEOnDF6ojCPdMzoI3e1F6ytwFliFCvYX2BzNoPjBkGNugzF2hb8+qteRyQd32mkJ99pmSCZUQxqF5YjhPuAKf10SvqomJc6+PFBFF24evYKuus0V9c1ioGOMJQw7fsCecUeS3PUB6JsG1MV74b06QpfEH2XuoCFNWQH80N/we06IK4mekyhsMffi+52vwH7+RrOjd7plrKXduo9chu8ipCY1FOlIDdtMD6UECpI8Jeskv+RcNWfQnWw1WgcPviu0r3/fL3aQ9dXrhfJPiBuhNWvQ4pjPuHqi6ybET5hKAMqdOvsLDKU6VPKPJb9D0oWMo57R0vAA6NIcx73rw4B0XlR3P/v8fD2yU+uVrhYzWlpcMQ2Yo7ycP2jaa9maUzLJFob56Io8evdCFx8ClMVYSNHwbOr8yUOsfcqj3j+28FqJYnTOmj6g4LIlgXNvZLwPEkXF9iX6jOKmZbRLigTPTkBYaA1s6ChkTTnNhRwBoaNzyLvkyBQm7KI/kx1wN9BHesPNqwXlPaQMRsRalSNSZ7nJeoyYAHfVBtFHnOPTa+P0+jqLcf2sejXad1cC Vgz5jRx7 hgfKrgT67guxep+h88jlB5XmVtHX4BdxpCTqIPSfg1EztVZRgFFtTOhN2WQtR1qk5sQ6w6jtZoTQy8qpgsZr9EuDI9q9jJt97nC8LGKs5JqrjWIVqRvA2fuVJ5bDtYaQo0iJpUHd2DyzIc5JOPNzgI5rFyb9GDADPjfUBavXWKI+m3d6IQ7fTD89V+PrVzuGGlO4V0zG7fjn+2bgdCXcE/8fj1np4WJxJ+U4sR3+jfpaTu8BxrqtjdooxTuqNjB389Ub512pUPDmhaxehzzryJhEbX8hPD7XiNIk8A6w4ozMr1/UWSsendVc7JtDw87u8bM3+yZpWTxMhy7FA/9v4kghd3JaROU8MsS05iaLcRz5I+fXlmR9wcLbqKFcZq/EZGpFS2VYNUPrt9J3IoSkc8HMfAmCg/REKt9UQx0DGwP1PLxHx9YF0oV1Hy+XWPDOUTWZz+wwVF19UMhKbwk5O1Mwqdg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: CoVE VM images needs to be measured by the TSM. The VMM updates the host about these images via a new IOCTL. The host makes appropriate ecalls for TSM to perform the measurement. Signed-off-by: Atish Patra --- include/linux/kvm.h | 2 ++ riscv/include/asm/kvm.h | 6 ++++++ riscv/include/kvm/kvm-arch.h | 2 ++ riscv/kvm.c | 21 +++++++++++++++++++++ 4 files changed, 31 insertions(+) diff --git a/include/linux/kvm.h b/include/linux/kvm.h index 000d2b9..d4969a0 100644 --- a/include/linux/kvm.h +++ b/include/linux/kvm.h @@ -1547,6 +1547,8 @@ struct kvm_s390_ucas_mapping { #define KVM_PPC_SVM_OFF _IO(KVMIO, 0xb3) #define KVM_ARM_MTE_COPY_TAGS _IOR(KVMIO, 0xb4, struct kvm_arm_copy_mte_tags) +#define KVM_RISCV_COVE_MEASURE_REGION _IOR(KVMIO, 0xb5, struct kvm_riscv_cove_measure_region) + /* ioctl for vm fd */ #define KVM_CREATE_DEVICE _IOWR(KVMIO, 0xe0, struct kvm_create_device) diff --git a/riscv/include/asm/kvm.h b/riscv/include/asm/kvm.h index 1dce9a4..2bacc38 100644 --- a/riscv/include/asm/kvm.h +++ b/riscv/include/asm/kvm.h @@ -98,6 +98,12 @@ struct kvm_riscv_timer { __u64 state; }; +struct kvm_riscv_cove_measure_region { + unsigned long user_addr; + unsigned long gpa; + unsigned long size; +}; + /* * ISA extension IDs specific to KVM. This is not the same as the host ISA * extension IDs as that is internal to the host and should not be exposed diff --git a/riscv/include/kvm/kvm-arch.h b/riscv/include/kvm/kvm-arch.h index 9f2159f..08ac54a 100644 --- a/riscv/include/kvm/kvm-arch.h +++ b/riscv/include/kvm/kvm-arch.h @@ -120,4 +120,6 @@ void riscv__generate_irq_prop(void *fdt, u8 irq, enum irq_type irq_type); void riscv__irqchip_create(struct kvm *kvm); +void kvm_cove_measure_region(struct kvm *kvm, unsigned long uaddr, + unsigned long gpa, unsigned long rsize); #endif /* KVM__KVM_ARCH_H */ diff --git a/riscv/kvm.c b/riscv/kvm.c index a9ade1f..99b253e 100644 --- a/riscv/kvm.c +++ b/riscv/kvm.c @@ -13,6 +13,27 @@ struct kvm_ext kvm_req_ext[] = { { 0, 0 }, }; +void kvm_cove_measure_region(struct kvm *kvm, unsigned long uaddr, + unsigned long gpa, unsigned long rsize) +{ + int ret; + + if (!kvm->cfg.arch.cove_vm) + return; + + struct kvm_riscv_cove_measure_region mr = { + .user_addr = uaddr, + .gpa = gpa, + .size = rsize, + }; + + ret = ioctl(kvm->vm_fd, KVM_RISCV_COVE_MEASURE_REGION, &mr); + if (ret < 0) { + ret = -errno; + die("Setting measure region failed for CoVE VM\n"); + } +} + u64 kvm__arch_default_ram_address(void) { return RISCV_RAM; From patchwork Wed Apr 19 22:23:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217562 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 83F96C77B73 for ; Wed, 19 Apr 2023 22:24:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1A06C900033; Wed, 19 Apr 2023 18:24:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 151B8900002; Wed, 19 Apr 2023 18:24:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F3385900033; Wed, 19 Apr 2023 18:24:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id E2E45900002 for ; Wed, 19 Apr 2023 18:24:12 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id A7AF61A0121 for ; Wed, 19 Apr 2023 22:24:12 +0000 (UTC) X-FDA: 80699569944.14.269E2F9 Received: from mail-pf1-f169.google.com (mail-pf1-f169.google.com [209.85.210.169]) by imf22.hostedemail.com (Postfix) with ESMTP id DA6B9C0018 for ; Wed, 19 Apr 2023 22:24:10 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=CdFLGUbJ; spf=pass (imf22.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.169 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943050; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=DqxJzuQg4YHoKMLWmjQ5z9IqDd25T8M3gtHVASWlMsA=; b=iQqx9CFq35Z7S0GweUf03igD5xvkvVu/h/OgqdG6Hva4WxDygZtDp0kHEXhRq6m6XrJJLx k0WBynlGw/xaGm4EBfDcejS+5wPGumirv6adV+zR42ZPPDggAvNZ7xRWnv1AtK4EPJjDmD JF6DKwDjRSjG7lyww5/J9YByG7gNxXA= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=CdFLGUbJ; spf=pass (imf22.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.169 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943050; a=rsa-sha256; cv=none; b=YSAN50/WYneH2VSCiGYdmxYhEhRApgsmn7k+bWLwMwvYHJfCRuihK3com+LNzwhd4EDviK njFw1+mgLDvcwZGWbzajJZ+Rq4kUjfVvrroJZ5AobPjAy8HPX75LK8aOL4ikQFvtwa++MS LD/W9KtPdcGXRrJfMB2fNelIV1mbetY= Received: by mail-pf1-f169.google.com with SMTP id d2e1a72fcca58-63b64a32fd2so482784b3a.2 for ; Wed, 19 Apr 2023 15:24:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943050; x=1684535050; 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=DqxJzuQg4YHoKMLWmjQ5z9IqDd25T8M3gtHVASWlMsA=; b=CdFLGUbJVpNnlbN6H0RysN3QwK8Q22dGILzUyKn1eed3BCAW6+MEMsBRDq2/F3MfEN 8F/42PROs9h1k2Q7VrH4EPO6wp5xxtsziRkW162nuTlbeuaKnWv/CAiPccnTCWWIYPQk oJLjTPMoTHn4eG+8ibMKGv7GyStv5zxs81LmeyyaemazO9r8w0RuVqYmdLVQ/35zsHF4 Epuj0d4WbFCdWHPxERyyC/wFKBbzXDxx2K1QzNu3em+Y/D7eT+3ZwnJpBriORGuqa1bG mG11CSzZymcMK9J81Dm4lnZ1qJfC6fNYaISOIHAhx4fE/+Qh3aPrGDxSYFrQFc63TMHE cEug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943050; x=1684535050; 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=DqxJzuQg4YHoKMLWmjQ5z9IqDd25T8M3gtHVASWlMsA=; b=V6ZIZD8cLOTQA+tzTil1QHVcb4eY3vYjUlb2WHrDZmfxT4HSar2uN7FCPJjh6ghkon eQMt2gizplD1JrRKT1Dd7Rf6U32CXC7635tQBdKQn5TI5HSKaDn2uq5bPjChsy0m2gga Wy2mOSS+GZpK08msjnGiX6XVQjWV8nP534qRRmhaNq69Uf6EtwOWUr4AWfAy5AMSb2mK 4nI6OTnpXEq8k4jwQR+TveYHxEIEy3ZNV/TomXlkOWhKBtHgFNyhnV8Yy+2I5pel7/28 lTVMm+cHMHo8M/EgYlcNTllzfbdHmZtkzEf8+yUQBEb+zerOXfKnYfuGLNfajHmHg8Z7 gIUw== X-Gm-Message-State: AAQBX9ewzuIbs5aBDpsCAag0SfcyzNqFJn3na/wQiEVp2DxYmsLETgjJ g0Ieo1BCisxHpXsrgje08y5lbw== X-Google-Smtp-Source: AKy350Y1oJzpFyEWrofUoiBPrqInLwUP0IdbCjWNBlR0+a+fpEuwpi5wATQkdQOE2P7s+B2OF642XA== X-Received: by 2002:a17:902:db08:b0:1a6:8405:f709 with SMTP id m8-20020a170902db0800b001a68405f709mr8145477plx.20.1681943049834; Wed, 19 Apr 2023 15:24:09 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:09 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 04/10] riscv: Invoke measure region for VM images Date: Wed, 19 Apr 2023 15:23:44 -0700 Message-Id: <20230419222350.3604274-5-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: DA6B9C0018 X-Stat-Signature: 57y5wb7ii1h4o1fu7x81fnzfmne6q7fo X-HE-Tag: 1681943050-888709 X-HE-Meta: U2FsdGVkX19Eu7j/1C6X+mvJWUW5nSjF9Mtg88Ln6ZZr2nMWJ3g1+FLHsZ2ZCVL61M1pyxKrcUDwVIHfNBMiVWB5ftlnpKTBRtcJ4bsM9itEF5EjEHP1VVEW0E6T7WMRU6Ty8FjXa28SPz+KLPR2v1VExEuQBqProR23PvgrcbXkcx7eXt6o2Ah1sYYW2sKgX6Poi3Ks+SOy4Ogv+KMDmuxbxn5Zbt/Vo85B2+X8qhyzawCjOWDRaDUe8NikF7HVEQNdfgCSdfXo6PjgKaiH9l/Fp8HR9j1kEZyBAkeTT6TIrO0m7/FXWZfonUwz/HS1N63QPuSE+XxgoAF8zmQ7Plf4wcRaW/5XMsEEgFvChTkd4Jf6eRqd8dDL+CorEfBD/eBetM4He+eXjwq0YVST2RhVwIgrshXww+33PKNEEKVaiWPWpoopVT5a3qlbz3iaMD2JJZbF0WpZjRBuE2xX5p3OCnD800lnWdgJnt0tqV39SwX61vhr4yKGu+Ndu/DsBywnkL8KeL0+w7qmYoUOe8hXrT20VPo+PGReiTMs44dDpgk/JeZJSCUTAgSjyYBc0eWzoiNZ71NIT3OigTmE+8guJXPnpjWDUpMt6NtcttF2aOz1cY8ECUJ2w15COlZDrzka4Xioc4bHLDOBdM7KBrR0QhbC0ojOV0umZQB+BMUr/6eLY2iDl9bdun1DCR/qHNRgt6b3eYxzLRzcPBF4LKHUfAsML1Hd+oKySXx+7gOXEcq7duluXENTKIJNW1X0gXDS/+11IZ6Rv0GhKCcfS3hB50gA8DOoJn3bGzWFLBD051+RA24Uxpp1IAm22/rc+TmQlWNJCHAYOgbcHWbo4OxrOa/mChkjapy0ulamCJY7o2hsV4FNfbk2z60iBAYmk4JaLC3C5KwelKzAuQJGj2K5zAqchJMGLLCsZeeH09kDFbtaGiiMJvU6HCXu8gbs7K6WKwQJaIceKaaMxoR d66g/3yt 8nV3CXCvBwJTmiQwAZqMuDBZCl1TQxlXP7M6HP1S8wxKISgYVw7vR9/vcM6oyJ0x8wA8S6N+kpfoltqzB9ATVbfMzg7b5qyOATumEI4gm+pQcPLMx+yqWtUXU8DXvcd+DJiFOH5xcR+EKaBNRDFeMBTRChrZV4ADg2ocfdms8ylXQjedmAb3rFh+s4L2PgkI+EC29umL9ZHRxsuCtpvFLv+OBcM45uNpFRKonHAPP1Py+qzH6WfPZUxHU0+S07MyYH8gtoivAg3p757ovfcIBau41o5f2yTcN4LtgIOBvdV4c1M51afGNmKeGkHg1P+GMXLqBfVBWQZXnrXWTflzpqwlINRD00jlBV1H0ZeQz8AKc4mUglpsgRTYoB3EI4b8xEfPycvwm9uIQVS3OKod5EDAILmnSbc+r9P+7sszw8tIAp7Lie4VC0BiV4x6BFSqEE6EtdNS3wGII4bDnHpYfowWWSQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: The DT, initrd and kernel images needs to be measured before a CoVE VM can be started to validate its authenticity. Hookup the measure region API for these three components. Signed-off-by: Atish Patra --- riscv/fdt.c | 3 +++ riscv/kvm.c | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/riscv/fdt.c b/riscv/fdt.c index 61a28bb..07ec336 100644 --- a/riscv/fdt.c +++ b/riscv/fdt.c @@ -254,6 +254,9 @@ static int setup_fdt(struct kvm *kvm) if (kvm->cfg.arch.dump_dtb_filename) dump_fdt(kvm->cfg.arch.dump_dtb_filename, fdt_dest); + + kvm_cove_measure_region(kvm, (unsigned long)fdt_dest, + kvm->arch.dtb_guest_start, FDT_MAX_SIZE); return 0; } late_init(setup_fdt); diff --git a/riscv/kvm.c b/riscv/kvm.c index 99b253e..d59e8bc 100644 --- a/riscv/kvm.c +++ b/riscv/kvm.c @@ -148,6 +148,8 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd, pr_debug("Loaded kernel to 0x%llx (%zd bytes)", kvm->arch.kern_guest_start, file_size); + kvm_cove_measure_region(kvm, (unsigned long)pos, kvm->arch.kern_guest_start, + file_size); /* Place FDT just after kernel at FDT_ALIGN address */ pos = kernel_end + FDT_ALIGN; guest_addr = ALIGN(host_to_guest_flat(kvm, pos), FDT_ALIGN); @@ -188,6 +190,8 @@ bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd, pr_debug("Loaded initrd to 0x%llx (%llu bytes)", kvm->arch.initrd_guest_start, kvm->arch.initrd_size); + kvm_cove_measure_region(kvm, (unsigned long)pos, initrd_start, + file_size); } else { kvm->arch.initrd_size = 0; } From patchwork Wed Apr 19 22:23:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217563 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id ADCC1C77B75 for ; Wed, 19 Apr 2023 22:24:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4ADBA900034; Wed, 19 Apr 2023 18:24:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 45D6C900002; Wed, 19 Apr 2023 18:24:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2D933900034; Wed, 19 Apr 2023 18:24:15 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 1C9DA900002 for ; Wed, 19 Apr 2023 18:24:15 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id F02C2C01BE for ; Wed, 19 Apr 2023 22:24:14 +0000 (UTC) X-FDA: 80699570028.23.CA99F20 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by imf20.hostedemail.com (Postfix) with ESMTP id 342921C0012 for ; Wed, 19 Apr 2023 22:24:12 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=h8qvhmk4; spf=pass (imf20.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943053; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=E81F/sZHqFlmC4PTTDxmyvFtDAnkdcxCBJVjUmPx/Qw=; b=lJrCo6d3vPHn0TfOzYAOpoE4FqJiJjGtaqeTIsP+GYHiAFePsRfkp+hHGAjOqUSaK41Mqw vyugYCRAQLncVxrjIOkDmdoWkBK5Cl9VrKTuA3ZeEPIQ0DkP47eoJRdTEntRLsMA/ei9s/ A7Y6KGCfjccQGL5ATjqozS5A8yfa2HU= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=h8qvhmk4; spf=pass (imf20.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.180 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943053; a=rsa-sha256; cv=none; b=c3KtqHIH3vb2fCavghDkqRh8OKgSV+p5nY9MeIOURSaPnudrT2UNfJ2x8YNm+u923yp+0h C4CbmGPv2mxyqpBZgnD+Nmecm5gFRHpJqd18jLPCQcA5hNe85ix5IZA4toqrXPBQq9wLv2 uK4BBwkcJZ7+hvnEkKnpXupwSlyaezg= Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-1a80d827179so4535935ad.3 for ; Wed, 19 Apr 2023 15:24:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943052; x=1684535052; 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=E81F/sZHqFlmC4PTTDxmyvFtDAnkdcxCBJVjUmPx/Qw=; b=h8qvhmk4lDaY4kQIaAqeKrnT156suhglOdhOFhlubu1kF8monJSVNUgUE+j1dG31u3 2u4SpVYqZ4tfegebKpsL38KKycJWXvEDDTgK8UNr6JRmWeQLZM10VY51+CKxQiNgddvl jVlFZj35wrKDUORGT0J+qOCCKpjlGHzbKe/sGfoeSgQinTk47q9jptfvuPOOM2rG+CYr zwGu3oFCrdRFjF7E7+wb2JbG1bH3s5tlAZXNHsT/M1j9N2DMFEV+pbXVFPMwgsNs8Fq+ +9F3bZPSaGt+4fI+77DT77iqb04ZT/uOhlexxfDhgZPl/024tDlCe5TFxeig37XFSsp8 WtKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943052; x=1684535052; 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=E81F/sZHqFlmC4PTTDxmyvFtDAnkdcxCBJVjUmPx/Qw=; b=NvI7bUOaxpbVHOGvYgDuG1CCQu+XxIzhiIVKLOi4ACdW555cAms7ZJPA4ztVenrJrf ZSNaoszAboKgYoXf1ltY0TiOxjPc/EaCZNEoRuvzBv3AzDn2QGSzA8tbaOF11Ns6uZyq VLt5oBLVCGU0oSgw6Ifu/AFiVOYJLE/oWTPeRu+HzhnN1qvi9OK81K8rvHbzpqjlY3kM h74gn8ZJsYvhk4wPh8rfMBbvq+fEQv32s+CCHqyp3OwEjKRKOftE20Nwg3b3U9zTy9Fk zMeZ89GKSPxP8Do8lrY2btkFVn9wmbLOrO8lTPoOrypiYzvC+/vi/9mQ4PPYNK2A5w6r 7w9A== X-Gm-Message-State: AAQBX9enu1LE3KaVQyNpArYMSGbDrPlBSxetJ0AuGn2dPLwOj8+6ya// zxTtf7pojwmqERH+uV+lNBLEIA== X-Google-Smtp-Source: AKy350ZDizFV7lhpli0WrCYYrT6iDsFp55kYpsDPb3wO0+TsDTvsM5wAJ/jQ030A1Tz0V9swMbp+9w== X-Received: by 2002:a17:902:da8a:b0:1a6:97fd:29e7 with SMTP id j10-20020a170902da8a00b001a697fd29e7mr8449012plx.27.1681943051998; Wed, 19 Apr 2023 15:24:11 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:11 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 05/10] riscv: Do not create APLIC for TVMs Date: Wed, 19 Apr 2023 15:23:45 -0700 Message-Id: <20230419222350.3604274-6-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspamd-Queue-Id: 342921C0012 X-Stat-Signature: mxn5w5xthjet76e6f5jrwkozb5oawdbr X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1681943052-707170 X-HE-Meta: U2FsdGVkX1/Q/DvVbJgvAJC04pPYM8tovBHmOAUVbmv9u51BuokvMIpWRT0IseP8J1cJlP+J/0OK0YIWmBxLiHVNz/EN4gjsQezZTWxFJS8KrsB3Nu1iC+tHL19xx0lwnSKTdVV36KW3JmF/ZHt5dLNLxEEvjfv1OatczYN4NvjeTAtkfSLN/zZX9diw9t+O0h3vJGPZiZ9x12Z/wLUSXulGeS+Fh2VoMuTmriCIcF712Sg+3ljExJ+YkQtsjbIfM+addMpX5X+nnU7axuCLKLTi2v+K8zjQp+rRPfI4QQm/B/6N1dl7mVyuUCkexo/8ciCnM1MaEdaWvxuOnAMPcjJ2hsvvh28PVVqmF9s0w6We+UF6v/NRMVoqiH0VYdMXrWKlcL3TmFi/jptFaozAAxW5e5YVBIFcW+5KDqdPctL4U+OeX2+cWqSrtS+tIyZZs3Fg/cBDLAMekL4xb9bx48mKvEBBS+t1eZX3i4sDlUZe0rdy0Wf/bFCfY0Wo0v7A0evvH0fG0lNFj18wuAqaC3WKTYqmlTAtaiPc7Gfm1P2TDXY5l0e1/cWZckIDTJCGSYi1y1rYk1J7UtdrXc/5B7MTUgyrEkyp+iD5+SULOYJUdkjxh/c+CSOIU1ZPgw0JwWEQyvbBshI+S8WatY87Kcw5rKJAAwGVZ+Woo9JUvVcPZOEkaR1SsRolW+uheeULPMOfLxORyZ7FC7O1M3RuSZKRCQIH5WfsF1fyW1V0Mf067Wtmt248xV+RKhqm8gQ7pswEgwoi3KE3R3McH1dE18xf28Oi10a2X8kx3CwndgCb+MZcVdhUcl7v+yQ9bbhVAkrMK/kCISDjjDHcOEPAm1w41+WY7i8uVgOj9OzpOc4VZ8TgDVIFYaN4lFNSyon6j3NJNz+MRY3xPTmg8fBgQr6Hg9PYHw7eZ/hBa2Jf4ukMCC2UE4Pl1Tr1w22zKtk+ITw158l/+q+/q2s3f4W wdGehb4o r1wyJKusRBTSYCBBjlrfoyNnGRpWjp33CjEkvzZd7j3KYb7SqUqgVeizmE4XxabRtdM7IDVeLdCthE1jVi8yb0dppPc7Ng7eaKdIt/6xYxFjaXd503+eMR4ox0IOdMFB2oWoeCq6jp2fYcuWyw7UOkRAVdFT2CDuUpP2BtxetoVsZHfT4iQ/5FQKa7hMXxBOpSPT4s2WB94VMfAolxWxE9t2D0amLD44QNXFzd369ZHCcdTtgf7Qv+tuy8Oz0HQKi/ZRU91geQU8wtd8Ft9oFMTUUAE/ty9XEEGpeVVd2Ty6IsSRYpKYCbvrsFRV5WyCrgwQR0sh2jhYOr7tKALuMOvuzyOXiLhjZuEco0ZPq/xWzUHsW3NwlgW3L7uqvDskT2Ol8IFEISuAQEYu1fXxWrYHxX6LpsO7J4PIbseyLYMQpa4WLtJcM/a13nRL53Alv5QztIi7bcLGwYavbx11qNSLStQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: The CoVE VMs do not support wired interrupts. Thus no need of APLIC at this point. Signed-off-by: Atish Patra --- riscv/aia.c | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/riscv/aia.c b/riscv/aia.c index 8c85b3f..a3b8618 100644 --- a/riscv/aia.c +++ b/riscv/aia.c @@ -143,6 +143,11 @@ static int aia__init(struct kvm *kvm) .attr = KVM_DEV_RISCV_AIA_CTRL_INIT, }; + + /* CoVE VM only supports hardware with physical guest interrupt file */ + if (kvm->cfg.arch.cove_vm) + aia_mode = KVM_DEV_RISCV_AIA_MODE_HWACCEL; + /* Setup global device attribute variables */ aia_mode_attr.addr = (u64)(unsigned long)&aia_mode; aia_nr_ids_attr.addr = (u64)(unsigned long)&aia_nr_ids; @@ -160,10 +165,7 @@ static int aia__init(struct kvm *kvm) ret = ioctl(aia_fd, KVM_GET_DEVICE_ATTR, &aia_nr_ids_attr); if (ret) return ret; - aia_nr_sources = irq__get_nr_allocated_lines(); - ret = ioctl(aia_fd, KVM_SET_DEVICE_ATTR, &aia_nr_sources_attr); - if (ret) - return ret; + aia_hart_bits = fls_long(kvm->nrcpus); ret = ioctl(aia_fd, KVM_SET_DEVICE_ATTR, &aia_hart_bits_attr); if (ret) @@ -172,12 +174,21 @@ static int aia__init(struct kvm *kvm) /* Save number of HARTs for FDT generation */ aia_nr_harts = kvm->nrcpus; - /* Set AIA device addresses */ - aia_addr = AIA_APLIC_ADDR(aia_nr_harts); - aia_addr_attr.attr = KVM_DEV_RISCV_AIA_ADDR_APLIC; - ret = ioctl(aia_fd, KVM_SET_DEVICE_ATTR, &aia_addr_attr); - if (ret) - return ret; + /* CoVE VMs do not support APLIC yet */ + if (!kvm->cfg.arch.cove_vm) { + aia_nr_sources = irq__get_nr_allocated_lines(); + ret = ioctl(aia_fd, KVM_SET_DEVICE_ATTR, &aia_nr_sources_attr); + if (ret) + return ret; + + /* Set AIA device addresses */ + aia_addr = AIA_APLIC_ADDR(aia_nr_harts); + aia_addr_attr.attr = KVM_DEV_RISCV_AIA_ADDR_APLIC; + ret = ioctl(aia_fd, KVM_SET_DEVICE_ATTR, &aia_addr_attr); + if (ret) + return ret; + } + for (i = 0; i < kvm->nrcpus; i++) { aia_addr = AIA_IMSIC_ADDR(i); aia_addr_attr.attr = KVM_DEV_RISCV_AIA_ADDR_IMSIC(i); From patchwork Wed Apr 19 22:23:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217564 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 692BAC77B7C for ; Wed, 19 Apr 2023 22:24:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 01ED9900035; Wed, 19 Apr 2023 18:24:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EE543900002; Wed, 19 Apr 2023 18:24:16 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DFAB0900035; Wed, 19 Apr 2023 18:24:16 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id D0411900002 for ; Wed, 19 Apr 2023 18:24:16 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 9F2BDC0224 for ; Wed, 19 Apr 2023 22:24:16 +0000 (UTC) X-FDA: 80699570112.14.8C80EA4 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by imf09.hostedemail.com (Postfix) with ESMTP id B9000140015 for ; Wed, 19 Apr 2023 22:24:14 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=frHFpOgJ; spf=pass (imf09.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.170 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943054; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=2k6fZhtBjuovD0xJN9/3Mss7sJpSj6M+Lhg1puIM9yQ=; b=QTrVKXAhP/otKg6G5jRKbYjFKs3bNcjgNFaEbXF0pdyusFfU9f+2OyA4oS/KLT9nKeN7kB T6shR+ehBV39Eu4XkqizbEWbYmevaV3ynGDJO2MIccN/eSl1Rrs0y33M2zRZ+F5umMKRDi vK4w8rjtOR0rjzOYnqkyIivv2YTKZes= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=frHFpOgJ; spf=pass (imf09.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.170 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943054; a=rsa-sha256; cv=none; b=EhQWUPqq3hgJkvwONqERGRI+JZx167PlA2rNqePwjD7txJPEru832N4it078mglCEQP3p/ L/wvUvZQyyBOga1fgoPXvyGic90zR51V1f4WcMocS9TbA5mJazUjUAtdTTc3WkzS6SrhHt ZxtQHKPegPyTTqyjrU1d1gW2Uz0XFw4= Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-63b60366047so360579b3a.1 for ; Wed, 19 Apr 2023 15:24:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943053; x=1684535053; 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=2k6fZhtBjuovD0xJN9/3Mss7sJpSj6M+Lhg1puIM9yQ=; b=frHFpOgJMj3IyT+0l6lF4ggQqLWSqJ+R5Lwl83JFjnZ1FgOj+RCeflj5OiteP2veXj hs8UabqlFhDeAfeVOqN8nsOlJjF/2yPcJvsYdreBOn4W0VsT07xnNPxxC9wRqCbEDrEI ZWpU6jo5/ivGxGl/5WlSrPuw4s+yWAlTdUEKKQGRxh6JkIhcKHr1ykdZxEako+r8BVLI Iia+UAGrprs58WkfVvjD7u2w/7WcLDjo2lLLRaRlMw3OivWlNDMPp50fyu9RdhML7Hv4 wHYTWA+nkcv0sFjdO1RQEsLbEgouvwKngVct5OCtGdc8SgVKzfHhIkTKi03d/OSMpN46 dypw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943053; x=1684535053; 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=2k6fZhtBjuovD0xJN9/3Mss7sJpSj6M+Lhg1puIM9yQ=; b=Z/9UB7uQJseU26RlC+TtJEuR4TkqmmHHr1HVjXDh5u+6z884RLFwOxfdvtCD38JIIT BsLbm6okOsYnjYvw3MZOmz/84E0JO9qbv9lMEcYp+2B3U0tTQuS8g/UE2xh5KTlUTux7 IlvbnbzWFJxQxX+gRxsDbTN27wVlaRCKAB9U+FhpHad7I/LpmG8c8BysnO/zCZ4mgAGU ulo50c1DRQjpQD5xOrxGDoMioLAOI5/XNYCTvM6YEYfdLXvZk/1Jkn2vRwh3xvWailrv pyaEEhZ0TbUUPOk1VJZpStdGBmXYjg+wWIyYsue8lCQNd30K+Qx5RJIahzUvWnDwmYFb QWNQ== X-Gm-Message-State: AAQBX9fEZG7TBYFGv4FQPrE3weMB8S6SEFEY79vB4/+hlV8UW4ga8uzZ pQOP19h1+7AakzMwyODIWCHPEw== X-Google-Smtp-Source: AKy350a+wtlv0SH4nHUTs3X+REynERjZtWfA6CRUt3D8Ejpa/aSb6HljJIxaa3PlyPoDKWKx8hTZ+g== X-Received: by 2002:a17:903:8c6:b0:1a0:42d4:e38a with SMTP id lk6-20020a17090308c600b001a042d4e38amr7048884plb.11.1681943053760; Wed, 19 Apr 2023 15:24:13 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:13 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 06/10] riscv: Change initrd alignment to a page size Date: Wed, 19 Apr 2023 15:23:46 -0700 Message-Id: <20230419222350.3604274-7-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: B9000140015 X-Stat-Signature: gwt8oytbnkh8qiowr1sa4rq1rhjswp35 X-HE-Tag: 1681943054-91703 X-HE-Meta: U2FsdGVkX19X/M5QtO0B5+zYqBp0QPhO+i87x662VdPKehdYBjj3WquVFFIEERZcGrSFnzVYvoa4eEqr4hxMvyLrIsjLuclFTftjiTp41HoBGttNB3h5JrbroazvLR/MvWptjV4sJ/WDMPR8QeI4Rf069ADS17rauHMSYWUi/1/ytVtfPAFCuz8hTpbdBlyXlKpKzvB4lg+j0inJZClzPOoxCr/TYN6DIvuhAhFCPY+jgk3jcGhwCaW1ij6ZkYOZXkmO6V9ze2yhbY5iqZk2KfFiSAJ/Af/lVzdOoJYjdSMyf+ReMNRtVSIpJFi9BaDqjq4PFfxfE6cnVKkl9hnUaQLR2vmYB+369n16c9SdyAZUcHWgxIGnZi6DoyMRUelk0s7pArgbShau1LTgX0zaYa+m0WNS9KfOnJPXMb48PsiWDAyVRyRfufqddi9FlM/tJ9JbVJHb7COBY/CtotT9TZ+EZHD1axkKz2cIeHnkMvZdUSpSj6ScCZBzqzN6f4zPol2A/x0/9jDFhOWygv5jM1FS4C86yddYL/Vn4ddL/wYDeGigO+4OMm+k0ZVyCP/sDcXpCBAGjgKIhJ78F3h7fA2q3YegHVdNm5N6Aq/mZXijAPbwUMYmjcTofVrXRlPi2mwnzzVLqmCMf1JoeYVwK8URmOx5G7pp202SwCDqwbQyWTwtkYIpXN2pr/akVczi2SDTueh8FxlxMqAJIKAYsGDPmrLKtkw8xeuaUecMXp9LZUaqZM789imdP7m3HrwBSRvXHzMVSUyDDFIHFVQdZQg3OjuefVDnG2jG89jR4HiSYFHJ3XlMC/6z9E6xZW6Ls2csVPI+YYk1tbhs0IvUdF9lsGR5YDVpxKswJMFxADEsMPTPhL6GEyueiCNxOfyvXrzaneUIEgYNRQq0LwE7yexvgI6cR5dw1Mw3YsXjU2I5jeLcZJcRDL82JcPar7xZvUAj7kiFGmru/bi/i9k ASWTTdUY qEhmVjF1Jj87KBhaia+1xaKKuTpivikaKsx0p0CaYuHg8IMObJ8MTs+XNAtvebjgNRUWf/OKhqIhcqg1YiXt/NJgPicfCIhQxqQ1DCgnT2T5NccsGIEKeS8X/+u3S/SoAvyM5Uh6fIYcxn/Zeb1iDhy2NZB7L7m2qwC7mNdhul1R0+k43VWNQJKYb3xPWZx+r3WmjOTco0bnv9b1rX/dIu7WTj5XFzzt6w8Apf9cnicpsyMWsUBxR3NjKmlAx1K8hehaHgg4irmltm+H+qfScrjOM7dJ5/aIrqv1LcRBl4ZPDPhoIJO2x48GnuYBWKHZoVF4upG03XtSHHJDuuYG56Eva3ewwr5ayswyyfu3TBMPE4rgx/werX2ZhsC4bL+hdIuseyW5fbXI1B4YvL5kTAnTn8OPItnXEGcqWxcQfwm5THDUHSXi2EQ5b8NQFvhOv5cGOOAgb9SbqRYGHEtKqgk6z27//fCLOKt6kYfNzBKnVw80= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Currently, the initrd image is aligned to 8. This is problematic for CoVE where the image is expected to be aligned at page granularity level. Thus, align it to 4k. This can be done only if user requested a TVM. However, initrd usually much bigger (in MBs at least). Thus, aligning to a page for everything should not matter much. Signed-off-by: Atish Patra --- riscv/kvm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/riscv/kvm.c b/riscv/kvm.c index d59e8bc..5f9b0d5 100644 --- a/riscv/kvm.c +++ b/riscv/kvm.c @@ -113,7 +113,7 @@ void kvm__arch_init(struct kvm *kvm) } #define FDT_ALIGN SZ_4M -#define INITRD_ALIGN 8 +#define INITRD_ALIGN SZ_4K bool kvm__arch_load_kernel_image(struct kvm *kvm, int fd_kernel, int fd_initrd, const char *kernel_cmdline) { From patchwork Wed Apr 19 22:23:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217566 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5CCF6C77B73 for ; Wed, 19 Apr 2023 22:24:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5C15E900037; Wed, 19 Apr 2023 18:24:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5968E900002; Wed, 19 Apr 2023 18:24:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 39BB6900037; Wed, 19 Apr 2023 18:24:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 14C4C900002 for ; Wed, 19 Apr 2023 18:24:21 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 56C25120368 for ; Wed, 19 Apr 2023 22:24:18 +0000 (UTC) X-FDA: 80699570196.26.3573ACC Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) by imf11.hostedemail.com (Postfix) with ESMTP id 7D54E4001A for ; Wed, 19 Apr 2023 22:24:16 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=a1bnzxGW; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943056; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ZTLerH+RJ52lhodOQfma/DJulVaHZ1rN37E2HPQ1gqk=; b=yhfNzHLYZ3xkeVNj/NKKjneMRPjPVrrJMn7ceUf6mxkhV7loeekCUuU4/4vf+1Ng8PP4Z+ SnFNY+tvYHHiQz53+VzVTR5OsCmikzHQO5kdUyKHu8ywYCcDcFT3PG/wPQSbZ00BineYn8 iQxAQyMLEMw0QeivyKL+sw0TbX8e8iA= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=a1bnzxGW; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943056; a=rsa-sha256; cv=none; b=d/ZNqWMp16VYT06O45cUKRrPZomQDydDv7fISuUuJ2pM0vw8woPg+wa642TfcPFVfkODug BCIeSLdrZn2oqb7OxYhuFmPw0AO7c6+TqljJ/7A8tKbLh8tMW6szmJyYNQuDFjxl5fKbvK EKTe+ACHDPGiTXX3MdgM6cT1s9sGlw8= Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-63b5ce4f069so467002b3a.1 for ; Wed, 19 Apr 2023 15:24:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943055; x=1684535055; 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=ZTLerH+RJ52lhodOQfma/DJulVaHZ1rN37E2HPQ1gqk=; b=a1bnzxGWwIOEAkq+19MIVfBP/ZCFCZqLmC1UeQSHZvEerwM1InrDlC+CNQjLasRYNY TG6B+BEbccXViq3GxUGM1S1bKt08GMbNh8cu2/7uvz8TADG5izCLZidY7kyXryOk8Cc+ amepc4YX9EhmwedHzdpQaI6iQRwH2jqt2DPucE98CEAfI6Pi8SQBLcJ1U0kFZji/jcS3 poVKHT9OeJbpVpJ3SjBehUYSR58tbT8ZMpTvtdSUCQHzPMMVlmcC1HTTyDhFywITeMq2 sEJhC6uIWIrcV3571Eqlwgn/Fm+q+fD6bbuTOkEai1g6rHX8oYaeAhJEcO5b4iPV/t6d oGlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943055; x=1684535055; 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=ZTLerH+RJ52lhodOQfma/DJulVaHZ1rN37E2HPQ1gqk=; b=dwn5wKqM1MD8EwrOSCPK7TSYyBlmA84Xk7j6dCyjhgt85S21/yNbcgSWGaH2mLjBYB zqGRhahBH6XFw6qEj6wTHW8XdwsGKiJIjmTQs7HXs5Gnu/FcQTB85XqA4vfI47rIE2Z9 Lm9hfWVP7Q4cNvx/7jxJVwcLqeXMMAm8lOpg9CaWYflhW0UT/TGbgK3+qsFYqNDOmhsg HZrrReS1m9J1j9zWZJSu2kpotkGCvAfxG01AqGudZ3mZtbRLi/ZNE0/UJnxunTPbZbj7 Wa2HTNjvOoMRDZ0eHtbu2Cgk312bI1U2fcHeP0SQLjAsu9fCwk8PziylOm5E9hE19Qxs h6ww== X-Gm-Message-State: AAQBX9e5H6MspkDuAx2DUB6TpBB0ePQaeQ16aOJnPtl5ibTDX7SvBXUY y7uKiXu7UxKvFuhEH6CPio5kRw== X-Google-Smtp-Source: AKy350biCI2sFr3cWCmld5tDykr7Z5GZPcCxF2zAi1qUg8p1jfhx7EqRslonbApZT3U9aoxz+Y7avQ== X-Received: by 2002:a17:902:e5c7:b0:1a8:1436:c892 with SMTP id u7-20020a170902e5c700b001a81436c892mr5044406plf.14.1681943055547; Wed, 19 Apr 2023 15:24:15 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:15 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Atish Patra , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Rajnesh Kanwal , Uladzislau Rezki Subject: [RFC kvmtool 07/10] riscv: Define riscv specific vm_type function Date: Wed, 19 Apr 2023 15:23:47 -0700 Message-Id: <20230419222350.3604274-8-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 7D54E4001A X-Stat-Signature: e4j6ibzp6xp7ferbdywjkyfh81e1fp4i X-Rspam-User: X-HE-Tag: 1681943056-904859 X-HE-Meta: U2FsdGVkX18xyHPS0HuxuisUVYK6L1sbMI5DKaYWxUzUg1A8X7FxP0IB4beVE+2DKyXBt5ehwPszYFnImX7qUaP37GnPxl5ZluqqaaDdGFKfug+ZKeL7WZOOg5LB3QZHuvXix6oIq2tsLNLPg6zKvX/N6T1icZ3OyvaTHZFFvgphOjYXhTQJNGFCyBeCCAF5GSMWcQbAk4ItYdKhzHfLqIIRJWwtHqSFJepIXpi+GRkWubmDZmQqzNHWfQE2ZPmUgGNEB6/q7K4PA/U0jyIC+gyueMiGfPc2p9jxEoIYALXe+tdRldg2E0senINhnmBP4ui9wTcLyjVV4e9Gi+U24+/Atf7bzlQF2oIARzYTfmJX5C7/7CccOwsbi6LNW1Z8cmktMQ8J/7ILbDLbrsv7oxx2Gl15bU9YaeRJOHr96PmcCqdmpfril6agofS6mjaAXnBYjkTaacJZSK8efkn50lN7XBqFjmG/hlP37e9KOltI6tXq2YXuunjqhrqc0rzUlkT67Bk2YxCxUqVMd+MjOv2PswslGbwk74z6pq9qNY3bkuhT8ioZLaCyMRgTM+F59bRPKcqLnlsakMc3ddPeasq/A/6rjTdNK81mKR/w1dOy2r7K28ehLZ+DpQXWqnn9jMaP3Ag3AcwM1NgEITX++m4D+0cPPdQ3xDavZaqStM0gXhPmJEZKu5C8FP7WTlVpTR57BDwEX1C10MlgQx8nKnDh46198hW28PCDtzy7BDk7mrUeiAVv6fbqojx2ywT2061yZ8PhraUalsxnnqtqj9S9Cgv0dQtOpcj4BexvgBXBjxbRMEe7n6H0aGNz1x/zx96zBoEVLQGW87UowrqyNPR8UVhtm8xXgTT5Foz0GmYIrVcCZ8uyTfSkwSkIZ/frzF2krSp1Crlb9BiXWyp2XIozqFdQWetidnObavwH17QhZbl15TCesyGyvps7JOQ96cZzxY+PsjD1UK8dG+n ICVOlpua 1hzKcslvffUAX8LDJ7yxH43QlYrMS0LwdV5TQSK5DJf7d6kCimrHSvFTK1J+qNC/V2i0InvkA1hzhelLhG7NIKbWPK48FSj5fsoNj0f/0Si3InGFTuNq900IEW42D0z7h/vMzItCg8TT+3pb9IT2TF+W+OWMChExMupnHM+Hf+jflXI08k9XMp4ywuJrRMl+iGfq+eEO0FCKKBHM9e4vIdcAxxsbn0TxvuyvNKPOS0s0LI3Fs5CjBGNw1EKM43yT2UeSdLFVcq2LYii9ka3N7wRPxJ2mvrbxtj+iBPcsMoemYqNZY5yaALz/Lv4XixPDCe83ca/NRiJiLPLTn0UkdacFGqNpm8wXQgumquNyDal9NVc7c5gcnTkE4KkHrodSQm+QNN1fvx7aGk6SjSe+GUBb6jOj6U8QQg54upv0A034TqEKX8hhLJ7LhSgutvZNtm9jAz6KQtO3N4C43/EP+FtY+ROYAa/Pq/wfjHc+fcZG8X9k0rtX4k+WESn89HC6nvpai X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: RISC-V supports CoVE VMs now. It needs to setup correct VM type if the user requests it. Signed-off-by: Atish Patra --- riscv/kvm.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/riscv/kvm.c b/riscv/kvm.c index 5f9b0d5..e728790 100644 --- a/riscv/kvm.c +++ b/riscv/kvm.c @@ -39,6 +39,18 @@ u64 kvm__arch_default_ram_address(void) return RISCV_RAM; } +int kvm__get_vm_type(struct kvm *kvm) +{ + if (kvm->cfg.arch.cove_vm) { + if (__riscv_xlen == 64) + return KVM_VM_TYPE_RISCV_COVE; + else + die("CoVE VM is not supported in RV32\n"); + } else { + return KVM_VM_TYPE; + } +} + void kvm__arch_validate_cfg(struct kvm *kvm) { } From patchwork Wed Apr 19 22:23:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217565 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E94F0C6FD18 for ; Wed, 19 Apr 2023 22:24:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 809BA900036; Wed, 19 Apr 2023 18:24:20 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 79190900002; Wed, 19 Apr 2023 18:24:20 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 63281900036; Wed, 19 Apr 2023 18:24:20 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 5206C900002 for ; Wed, 19 Apr 2023 18:24:20 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 26EEFAC3F7 for ; Wed, 19 Apr 2023 22:24:20 +0000 (UTC) X-FDA: 80699570280.15.95AC0DC Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by imf11.hostedemail.com (Postfix) with ESMTP id 4FF0F4001C for ; Wed, 19 Apr 2023 22:24:18 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=KlF0beSB; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.177 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943058; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=iv3jO/UplLaGK+gTx4v9j9xexh60oYjru3uhX3LfGtA=; b=oAJU+yXSSs6A1oNZKEFcnzY/8WciLglw4V43hRUUBeq/cG6VYo9ofIS7aw4F37lfXOxbdV Mh0xKfnZlp15UEw+yOs4pk0B7Q26CO2EjBcE/AzK4INl/cqEroqwxbElXEZt235YYwv+ER 58nEyeGvbDtNXLapiMRCCpC+z3KaDT8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943058; a=rsa-sha256; cv=none; b=mGN6WfmbtDYu10oETrKK0Zj8s1WwwaQoTxpRVqOWwEMYWt/RAnRYdpIncDJjvwj4d9MQU0 Nq448q6uP3Q5hGyV+mZKVTNoIE7KYOxFOCc1siKyPA/86Ck/TINGBe7IKLP65sD0DiFa7A 62lopD8DhsSo46XNBOBZRj4qvuSFOGE= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=KlF0beSB; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.177 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-1a645fd0c6dso4351225ad.1 for ; Wed, 19 Apr 2023 15:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943057; x=1684535057; 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=iv3jO/UplLaGK+gTx4v9j9xexh60oYjru3uhX3LfGtA=; b=KlF0beSBSA6VLstvFDlAYMs9lpg8gvRR8zucHEopsyriEw6o1h2sLsqbVwcFiW8cZ2 ykz4DGeTyhjIF7TUhCvkjoQIqDlNYfhLHbuIW6A6Nze2qZg8Mjs4XhacrR2YEsP5YvVC RlKM3D/qrtizTZ3hrz+4hH+4HBcHwt4wDVgzIrtDMMjRIhDdPS70B4ffIp/QcNwVpgLh l3tvN+FDLmm6WxBLSXFEB5UUmHWn5q2p7Y1BPq6qQBjKBoxl/p2sw2H5TvKzZwP4jWXj /BG7zkngU3fOCCHkdBXlJJfXlhrBn1uWDICB+9I2KRJvOa60PVK4lOGzawO9HJcdv8/2 2Ciw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943057; x=1684535057; 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=iv3jO/UplLaGK+gTx4v9j9xexh60oYjru3uhX3LfGtA=; b=auPNAuXJ8Zyv/SDHRSq2ZlL3u0HPwBKLriIJPKwk1O/KWYopFjBuCfm9kz00uvPD1v d/CvDYhe88kYBCe69zcf+1mmIaTboKwY6MqDMe0h6ihRkl+T7v1Ol4H+Ovh1u/bSTUV4 29TqychAQOn973GjsZrjh85uoJOAfiAm250eTc03IuBYzJlOEbDKDh8NDh1dYU25Ck8B vhe27KxyJOrqZcPB/6c4aq4cexb/wPMSW6ZZXvED1qSXZEFc+CRbF0NmDQhV5NIxOWE7 ZY1j5Xw9KXnlHm3cxlIwy02MjQRSBZXNsG9SsojmZgNtZ/BCKOV1xTwfd/cX4BayWY9v YzeA== X-Gm-Message-State: AAQBX9c20/sprs7Te4PCGTjZo664oj1+NTMIvVS48tIb48msroLow0Sl 2PmsuSP9QNIyp2y/gxNfhPI/uA== X-Google-Smtp-Source: AKy350YmjLuFNHpdbGKVUxtLnNGDTOqZujizSNNxdVNVjL7P36ZiZ6Z6Phv1PaiPaoxLg0i7OBeTQw== X-Received: by 2002:a17:902:d505:b0:19d:778:ff5 with SMTP id b5-20020a170902d50500b0019d07780ff5mr7467330plg.15.1681943057246; Wed, 19 Apr 2023 15:24:17 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:17 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Rajnesh Kanwal , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Uladzislau Rezki Subject: [RFC kvmtool 08/10] riscv: virtio: Enforce VIRTIO_F_ACCESS_PLATFORM feature flag. Date: Wed, 19 Apr 2023 15:23:48 -0700 Message-Id: <20230419222350.3604274-9-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Queue-Id: 4FF0F4001C X-Rspamd-Server: rspam09 X-Stat-Signature: 9spghif36fhnsgf5zh6gkg9y9csmd9o5 X-HE-Tag: 1681943058-350276 X-HE-Meta: U2FsdGVkX1/NnPmbp7MBlCPKs8U6YsHFwa0Q0/qa8vGAylT5LfApDa7Y+XRPHo09UVP3Fwh6/VS4BWSTM11/4C1g+yb8+ogzST3mJDWYjPCFicZxmnmyvaBq8RpFiNoPp7S716fhmeeIFGTFaLPsV1vE3CtGcRar+yfZnzZk9o+WB0spGej068U0AlQL/YaCel6z1xPFjB393sBlIun3FZkinu/PhEFRYdQJO8JnEugcbrAqeo6k+ekq3zpKmNztqSaDsRq1bomS1jg1cPLeQ0uhhzFN9xfTQj4LoflHJFxWJrmFRZpCN+SU1jIXtJoTgBOBurBE4gfA2J/HnMGZ4WZUWXhdyCwaJqrdhsG3WPDtFanGdkuRJ8iDRxwUcs2sTr5sA9uJXmjVnjutgQt2DV7fy0B6wR96yPAUeFPyTE0W2OP7Oy7QmyXLFEWyhEaE87Nqi+tldM65h2qxAGq2W+O9r4q0T/PNPxKirT28sjQFM68n2JQDCGyu0xRO3GSPWpmuFtYFdDS9lTCjioSyjEbZv7GQ81MgiHUcPajkxVrCPLRN4146XMQaKj5zglmLx6uNnlzL/wibb23NzqvZ5KFDc52lIiSQrfzAeYeVWgEbCWM0EmJF1M+dRPHEXnLAoKsXCAeprnq0SimvuzL1aSZciKwbMlh5cfbpa2TFPFj5l5v+WU+e9qmHcAcg7D4DnyryT7xhhv+j7Vue08wPDDO2S+7m1MrZ0VGXIXeWX2ixJJbUfgmOTPFTWGQazlK/dNsjMzSaZJYxvrSBRXDEnqSINCvJqhuDwxG764As88vh9z79huSAwvrjl3N8Nluu025Z/wLaRygthtwosJ4WwOfdX5dDTesIdjfBpJub1Inp8j1Th6mCEBth1xFpfAWhTfSu/4d0Pcyg/jUDvuAUdA4esd0BevXG1mu40k0CaSAwVR6f/URYGTTNdqA12ePjcehcOZoMOWWh8JRXuW+ WMCjt5ex 09tEd8vD4F1UV+wyVTOOAFhRdE8BKKXryZ+uPvfOiSq4b/5MmA51Pr6YKzENFzSJbNSxKDnfnWL0jMaa8pWbPuXnJmgnEMivyxZtinDNupeKro29YAHAI+hYMZczitpI4Vberiw3ALS/BtlhYs3Y4IPbHwtTAVozsw3dseHjFbFBBnfvwaiDUSVvMgQy23ZucAST6NsY2LAnHZS2xllstF7JEuLX5A18hdP/1lc6TGLUrWzhw6MKbYHM4aUk+s0dlwTtAn8h79B61nDBnUOEDHQfYuyVvPZRjmY20aFJGHvnJ93uKjjZmSyDBeUjq5JwPEVghLLbDq5AQCYntb221EEt0JAxRFp5pGafIrvkf8vgyR1HaaSwj94rxnJyb8McJWvqhntL1Lvz7sea1TWgmGJXHfU4z4TepNmKkIQxlqyu4+k2n5FFn2rP8KcttlyAi1gic1O6VKEM/Px+6LrP8h3ECafbrlKAR0pvJA+iL2vglHm5iPgZpxhEcIu4t90EfRm+u X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Rajnesh Kanwal VIRTIO_F_ACCESS_PLATFORM feature tells the guest that device will be using DMA for transfers. This forces the guest to use DMA API to allow the host to successfully access guest memory as needed. This is needed for CoVE VMs. Signed-off-by: Rajnesh Kanwal --- riscv/kvm.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/riscv/kvm.c b/riscv/kvm.c index e728790..aebb6bd 100644 --- a/riscv/kvm.c +++ b/riscv/kvm.c @@ -7,6 +7,7 @@ #include #include #include +#include struct kvm_ext kvm_req_ext[] = { { DEFINE_KVM_EXT(KVM_CAP_ONE_REG) }, @@ -224,5 +225,14 @@ int kvm__arch_setup_firmware(struct kvm *kvm) u64 kvm__arch_get_virtio_host_features(struct kvm *kvm) { - return 0; + u64 features = 0; + + /* CoVE VMs mandate VIRTIO_F_ACCESS_PLATFORM feature to force use of + * SWIOTLB bounce buffers through DMA API. Without this device probe + * will fail for CoVE VMs. + */ + if (kvm->cfg.arch.cove_vm) + features |= (1ULL << VIRTIO_F_ACCESS_PLATFORM); + + return features; } From patchwork Wed Apr 19 22:23:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217567 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 18E7EC77B75 for ; Wed, 19 Apr 2023 22:24:24 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5730B900038; Wed, 19 Apr 2023 18:24:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5223A900002; Wed, 19 Apr 2023 18:24:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 39ABE900038; Wed, 19 Apr 2023 18:24:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 20382900002 for ; Wed, 19 Apr 2023 18:24:22 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id E5A74C0224 for ; Wed, 19 Apr 2023 22:24:21 +0000 (UTC) X-FDA: 80699570322.01.DB2B0F9 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) by imf25.hostedemail.com (Postfix) with ESMTP id 14137A0010 for ; Wed, 19 Apr 2023 22:24:19 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=nUPF7sXf; spf=pass (imf25.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.171 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943060; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=92JmYNvjI4h3x1v84zDdO04a6NNcBv03E/psDBTJE8A=; b=dvkLOw+7CEaCaX7HTHF0/mDeAcF7HdwFXj+Kw2TWuMtS+yEXNujDUakgJ27galoefyOhmG /uFTrdNglSAWbd4S+uEc0jg0Pi9aNhhzHRcn7YyzZg+vjX97bgY0dZG6DwAAQ4P10DX/nJ paE8JwQ+rb8/aIW4TBsI+4Afa4NGSZQ= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=nUPF7sXf; spf=pass (imf25.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.215.171 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943060; a=rsa-sha256; cv=none; b=sA8uLIkySA1FafcVMmQ4VbV3JEFm6yEDq6wlERkHhIG+4NIZC38K6xPFR4wLPj68lb9Ii7 SQM33Q5DCpOJCBkyeqnSPTY5z+FE/zbm+rudna5EUnL2IOU84jJT3/GnjxcZ0y7OZSJhH7 fMMXNByJiy/enFaNLGf6plOcRD4Ae9U= Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-517c57386f6so199811a12.2 for ; Wed, 19 Apr 2023 15:24:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943059; x=1684535059; 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=92JmYNvjI4h3x1v84zDdO04a6NNcBv03E/psDBTJE8A=; b=nUPF7sXfdzfSW6QquvIfaq4GAfSYyZeAk0mT1xklq8pqmC8JoWNIvCjy+zgsODVUHq O1IjPJuK8sxnkfCXOFdrW+u9RpzMDpy7y7UdhAG0oCuYW3dH8GSGsOh9ODDRIxw2eaFz bkM34qwDSq7IzfX047RwYqZPP8OQknDg9R1karBknWrofSn/KUs6wUf/rHdpra1bOATf rzsEvtKv0XMZjsFArXphtLo3X7lGUkjGEGkW6yljl786vgCvygViLOvHooAc3u8hDTWy WbwJ4EH+yr+KTGNMLcFTkEfYKE8eHBN2A40w7EVpD08O7tCunWfP2Fwi90JATCfWffYG bUcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943059; x=1684535059; 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=92JmYNvjI4h3x1v84zDdO04a6NNcBv03E/psDBTJE8A=; b=dO76KZDk0gwnf5utBwMk8WDUQYqGQVnMh4xz/bx//zwFxThMDG9xKbOSAvKxTjrDvh Lj3S/qggJGTgligYImSVRKg1/UqzGp41JuvkAV5g7+38VJohXlDIS5LL7YQWOC0Bx5e1 d6cPdD21OgvnUfUk+Dp1V4H0cvOJM3ZxEKRHUGgeKcPmlgPASyO+H9BX6IAs/2Zyyipj I4p0auJ5BQEwrn6hwD4e+We8lA2Uqtiltxp6I38xcWSgm5EIEwxsj/d4ioY2V9mhg9wg EuhB0V5kj89XqI9tJYx/k66IuaEQixTqFU+SG/1pR9B6AyqBCu1/pSOp8WJUFBj0btqM jVjA== X-Gm-Message-State: AAQBX9d6TFiA3Nf5b9ltJsX/ZF1kLvsyCVez5LCbW3OF2fZojXi+pNKi E6ZaOhmWfBdflkBGort2D90VMQ== X-Google-Smtp-Source: AKy350Z85naSstLXZzvY5D57utZL9LkLhfRNOpeuO+9VtZ6rJWlxmJ/TTxgn/rQUXeeW25YB/WTEcw== X-Received: by 2002:a17:90a:cf81:b0:247:1f35:3314 with SMTP id i1-20020a17090acf8100b002471f353314mr3406729pju.48.1681943059019; Wed, 19 Apr 2023 15:24:19 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:18 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Rajnesh Kanwal , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Uladzislau Rezki Subject: [RFC kvmtool 09/10] riscv: Don't emit MMIO devices for CoVE VM. Date: Wed, 19 Apr 2023 15:23:49 -0700 Message-Id: <20230419222350.3604274-10-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspamd-Queue-Id: 14137A0010 X-Stat-Signature: sp93m4ro6i4m8hgasdhncs9twr6559yw X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1681943059-595096 X-HE-Meta: U2FsdGVkX19a61FsWDWCwM5HsHq9TKAl//D9KiE3G5mhMDZ7sjV2cKWcE2uh+duO/Jo3SUf5EXBdFSpR1/9IF3ze6QUVj0ryPblQl87/2lMVVsc3AfLSCiLcGkSQJlILUJCpmLnxZ+x9tYmDqZrEwt+qYAFOqg/nquXuQRYVB4qyPLc3ffZJUwyb/DJ9tTqoe8CH33AvSEo+J+9Tvf4BmaCghncg/NYbaVF0/UkMzMxvY/9uXqMNV0jo+pUuGbAO7raPk4lLhQQEhb+qRwUyZLp8uIHUtwQqyx9YYiBCLxbHJttbmZ9mhRYrLDYmuAx3Bfl5bzY8GnK869R9UmSSrEWggrbVOsqc/AdFH/bh60nW2TiIa4vv9ZajzcNUVnkWPr3Zea0F8+W0nviClHM93E9RSCMzXjK5lzEHE4PeD+vGl+FwVR8gDmGdgEYfHgNw7P263p9LejsJVK1+NOK+pt0Zjsmo5vT/iGryOxg5kBZXqd9ov3pGM5ZcNtPXZYd7Oi1SwgfQHwzvctcmVHg8/hGtwEcNY1w0hGhoH4hbjN+NgggbLefDE8a2HUp1ij4lhOz4LwsSeedZFI/d613eHhD1Vw4tY311MxoiQyCMrDip9TI4RAiyCrDf5Ri8m4EgcXELVK6/LqubAl9285GaXBG0AQJCQH5wZlnQE2NGx8So/GhNW5InUU2dTHVpNTxdWGfATStwZPx0+J0gpLUy6oGCwnxLdCHwRsQiLXyLvfff0rwEL2iyEPIDeneyyAuiPlEt6Yki6Ec+rvu9DXQxkcZEC65qH27vcyUUks+d8hicJgW1zgGd3H/VSFhGe8dbbMKZzdQpkRYqoZxDm58OBEj5OZOX+cOQl1VpGALaKPk9uvSs/0ShnuZVkYZK27A9nBw0eZx1AddpMIgf3gKAadU/B9ypaiT994WWjK5NpSQU24anlIqx9XM06J27U/MgW6YwiMPZZ+Dt+p+q7nn r8pDJh4b roZMdty9vKlfughxV3BoVlJrYw8BEkrVrZh4BXkK1eWIy7R3iVqSqEs7wGYsqAAlh+BQMIo+vRis4PrtUli9JJ5P2WOfx7/V0JfmKnRy58DEIfcm3MYwIgSSKR+kFyl88ilfg4hItSDWSyG64nUXL0VqZXLpiTG656TL2oTPwewN2nFQhLPom5oegYPMO/9sqWZjL95Qgzb9cJNC9GTMcLfUG1GjnHpYrsW7DsRb6wLDRK1WCDxJyhRUegMpjjrIo8eu18tnhlJ1tBZ+ln+KNNV3wTKqmN9AbLPke26Hk59VSevKF7kmh3/8aSZE9Brtprms2ygBCzuYCuS8nM9PkoYhQ8Er/t+DaYYO7zRHo5Q3Pn1JhfPc4v8XUN96SQE54kBtHs7uQ6/jAlyakpGkyy4Xnxsg1gqrmHEs98jCr8quOr7NSQw2Yq1mpszXJPo2y1XeNqrwAPavaU8aSBuHUAJPuFQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Rajnesh Kanwal The CoVE VMs do not support MMIO devices yet. Do not emit MMIO device nodes for CoVE VMs. Signed-off-by: Rajnesh Kanwal --- riscv/fdt.c | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/riscv/fdt.c b/riscv/fdt.c index 07ec336..a7d32b3 100644 --- a/riscv/fdt.c +++ b/riscv/fdt.c @@ -210,22 +210,25 @@ static int setup_fdt(struct kvm *kvm) riscv_irqchip_phandle)); _FDT(fdt_property(fdt, "ranges", NULL, 0)); - /* Virtio MMIO devices */ - dev_hdr = device__first_dev(DEVICE_BUS_MMIO); - while (dev_hdr) { - generate_mmio_fdt_nodes = dev_hdr->data; - generate_mmio_fdt_nodes(fdt, dev_hdr, - riscv__generate_irq_prop); - dev_hdr = device__next_dev(dev_hdr); - } + /* CoVE VMs do not support MMIO devices yet */ + if (!kvm->cfg.arch.cove_vm) { + /* Virtio MMIO devices */ + dev_hdr = device__first_dev(DEVICE_BUS_MMIO); + while (dev_hdr) { + generate_mmio_fdt_nodes = dev_hdr->data; + generate_mmio_fdt_nodes(fdt, dev_hdr, + riscv__generate_irq_prop); + dev_hdr = device__next_dev(dev_hdr); + } - /* IOPORT devices */ - dev_hdr = device__first_dev(DEVICE_BUS_IOPORT); - while (dev_hdr) { - generate_mmio_fdt_nodes = dev_hdr->data; - generate_mmio_fdt_nodes(fdt, dev_hdr, - riscv__generate_irq_prop); - dev_hdr = device__next_dev(dev_hdr); + /* IOPORT devices */ + dev_hdr = device__first_dev(DEVICE_BUS_IOPORT); + while (dev_hdr) { + generate_mmio_fdt_nodes = dev_hdr->data; + generate_mmio_fdt_nodes(fdt, dev_hdr, + riscv__generate_irq_prop); + dev_hdr = device__next_dev(dev_hdr); + } } /* PCI host controller */ From patchwork Wed Apr 19 22:23:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Atish Kumar Patra X-Patchwork-Id: 13217568 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C943CC77B7C for ; Wed, 19 Apr 2023 22:24:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 32A27900039; Wed, 19 Apr 2023 18:24:24 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 21498900002; Wed, 19 Apr 2023 18:24:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 08E64900039; Wed, 19 Apr 2023 18:24:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id EA6C2900002 for ; Wed, 19 Apr 2023 18:24:23 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id C1AFE4018F for ; Wed, 19 Apr 2023 22:24:23 +0000 (UTC) X-FDA: 80699570406.21.1CBF937 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by imf11.hostedemail.com (Postfix) with ESMTP id E8D2340008 for ; Wed, 19 Apr 2023 22:24:21 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=Hy5Vjaj1; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.173 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1681943062; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=joeGaZNojBtAEH48oFyXyXsTdXyxZ+syATM0NtCwkJg=; b=WsDmxexP2WtGEX9LICqRgeeh0mw86SRavqeKCR8bc9sXSGZz7SV3b/XwbvkJASTOvRzeQd HDVZcY55hpj6CareiQ4USYrs+hJaY/7ydAP0329dSds8GKFzC+rxz9LVejrCn4N92sr9Qi UpmRNivfCSjjwvgwmqZk8cmd3HyNQPU= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=rivosinc-com.20221208.gappssmtp.com header.s=20221208 header.b=Hy5Vjaj1; spf=pass (imf11.hostedemail.com: domain of atishp@rivosinc.com designates 209.85.214.173 as permitted sender) smtp.mailfrom=atishp@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1681943062; a=rsa-sha256; cv=none; b=xbEhZMEkj33RBaXiuFu9wU9NcI3ttgPxmVNpTUhRkihWCiq4nQNYfdsvpj5SrDPQNwdBVX gjyPN0A5E6/g370FHBbgufdko3J+sgXh0TYSo9CYE0d0HJ5YeLaKkBDC8MBnrzgBSYeDSl xnHNOquTFWGtRldpy9a4LuvT9IINvGU= Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1a526aa3dd5so5221825ad.3 for ; Wed, 19 Apr 2023 15:24:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20221208.gappssmtp.com; s=20221208; t=1681943061; x=1684535061; 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=joeGaZNojBtAEH48oFyXyXsTdXyxZ+syATM0NtCwkJg=; b=Hy5Vjaj1GFlfqXFgFU4Wk7wYhL+AdW+GISShF7pbpQzBCAzoyX06mKj9riDONUvoTu KJygh5nscsoyPvItPChqrHSXQPxDp5bYRAnKsEvFqcmijRhCw38xeSwetTsF9AvkbUYf hVmE7FSAH4Q4wrzRD6pw23VK9AaSnKgovUSlZ9QXs++6xGQZcPVEtNzbYKNpDmb7ydxL pihm7AbjTblUz+nkMI32xYxKW27gseqDrV0RGKN4T43bczPSmCXLp3fRh/utmO9YHtoB Sey/VFplr9PE2lySTaLRpT3t0lbZnm/yfBcOsJhGI8vtN1zAVWuoZu9OzywwnPC3RL4n V1wg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681943061; x=1684535061; 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=joeGaZNojBtAEH48oFyXyXsTdXyxZ+syATM0NtCwkJg=; b=CkcA2qBnMNzF/13arL+JU2Vv285+gQqp2ra8Q5SseSaDXI4S9UrmVytOrvecfnIEIx b7QFufIkG6HxEgh6s75nqlaOkeFt4vG0OJnTkVkKJWRMjXfOvth5tIpaF6LQArU/G2QE DcVn5HtUSoVa6aoo25GISDTByN/ejm6vOqMMLJkhlDLf0HtgmPaGpIOvzvd44aSP4hed qXnwjpBrcsYjnwbzPUvEb8sS/2ZbjdZAGAmqIYu3GxQwBfBeuuEw9h/XN2fCa91jzXuz ludq1xesL8jXLbJQJ9I16ylfNPAetG153nM3hM/57eODWTt7+3v8czDwVjcmK5L+BbX3 Eftg== X-Gm-Message-State: AAQBX9edaQ3lYFVvo+sBCI+dU6kAaDww+9R+BtWwq2VrT2KYuaKahKiq t7/Dg05C6JuHZgZIM6LcCRzUaw== X-Google-Smtp-Source: AKy350bpDV/yb/MMXonhLvjhCzwnd1ozKuOFojavKdcbbpka5zKY4L/5Rw/zrIiOtje9GuJuXPaRMw== X-Received: by 2002:a17:902:7891:b0:1a1:bf22:2b6e with SMTP id q17-20020a170902789100b001a1bf222b6emr6634040pll.43.1681943060762; Wed, 19 Apr 2023 15:24:20 -0700 (PDT) Received: from atishp.ba.rivosinc.com ([66.220.2.162]) by smtp.gmail.com with ESMTPSA id e4-20020a170902744400b001a681fb3e77sm11867810plt.44.2023.04.19.15.24.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Apr 2023 15:24:20 -0700 (PDT) From: Atish Patra To: linux-kernel@vger.kernel.org Cc: Rajnesh Kanwal , Alexandre Ghiti , Andrew Jones , Andrew Morton , Anup Patel , Atish Patra , Suzuki K Poulose , Will Deacon , Marc Zyngier , Sean Christopherson , linux-coco@lists.linux.dev, Dylan Reid , abrestic@rivosinc.com, Samuel Ortiz , Jiri Slaby , kvm-riscv@lists.infradead.org, kvm@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Palmer Dabbelt , Paolo Bonzini , Uladzislau Rezki Subject: [RFC kvmtool 10/10] riscv: cove: Don't emit interrupt_map for pci devices in fdt. Date: Wed, 19 Apr 2023 15:23:50 -0700 Message-Id: <20230419222350.3604274-11-atishp@rivosinc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230419222350.3604274-1-atishp@rivosinc.com> References: <20230419222350.3604274-1-atishp@rivosinc.com> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: E8D2340008 X-Stat-Signature: rfdcz18711qgff8pq9isydaeoy4zpg63 X-HE-Tag: 1681943061-102582 X-HE-Meta: U2FsdGVkX19IEul4tRhGHXaPglIxRODfKnCe2jdslgqE+lLoshFkJdb2O3agYyTvZ24O1oYkxrD8bzkrxu1akzlaY0zUNoQOUiXxvpwqli2HmQShmpgplHJUrnGgDcaKcT8Qxy8BdPCnytY4S9fGHGfA0JR9Uesmr+D2cO9YBVhQUGqFh9on9C/FHKv+SwDef5oah9F3DH2NM6BddySDuPEw+A9d2r089hOzwpt4oCkj2LRR6mgzsB76Fm6zboe9MOOqJ6oaDeiqOQ+BPa1XyakxWxPeEeN/FQGbUgavqu6nHr4vIinsKBGnQCuYpKOaqDjaKT0M8fqAT/v1HQFuFB2n2tJZ+w1iICNyRLeWjDwuxe7OsXJaJaBxG2OO/bx+VQjW1u8WE8eeLv5s50WkhRaQGjO3fNoimqS//L05qJ70Drcx1cSwzeA3rjc/BEI8gkwf1/VsMqQUJH+yQDzn+75dKYLaeiDizSSKZInXsopaJ3iCC56R1aRk8a4nKQTdt0PgGttHK3FK+yUjCb10bzKmo/fmRk3uFQrb3k9qLnO30IUHINP49/h72r4ZsaGf559JiPUp9lsiLCmMWCCBKNBJqE8lJTT8sTND7ysQaM8vyNzMly8w+pO36vLBAmSy01eCZDo5B3w3MVw2VHPdE4YleKSJ45IaVRFGQatImlFerBJ1ctlDicou9GkCxN1fG3kA32qFJqmE6W/ij+WBJTPhsdY/v91d4BTa+chChpwSeUhNoaCGPkXmJyXFcpPIlAJoTX/Hn8zK3m0i0tzS2cV/egU9i77N+WAHyTWwdYUJXFvou5f+vgutd/6gZHJxWljnS8/hx23AvfoNv67vowEPC76HOK2zbjApANUSPXzoAihB976CcWO5b/zIm9egU4x+kdzvrCisuZXUZedkOQJRuBPkcLYYZPSsx5siYW1mUfJewZHmnMXE9AqQysHMFbx/krIQpbElLaozT2e 0jd+B8Wh AufcFhQmL42xFvgNoesPJruUF6kEM8XuLN8TAd/+Oa9nu9Kuba4WKYNmJSb420pWdW1iemAdttEwJVyVhh9lRMUOUE8i//schPI5cJrHXkP7uYrafpjBBoMXkx/or6bzV6+bNHOE6rH5fSvM/X/tbouELF2vQQVqAP5FUQwG6JluY6XgLR7x0TXAHYehaHTHsmTPWJ6jk+CJgZiRQ9RToRQdMEoXP3xz9K5HtAUX99aXezEKvK7cH4aGfM3x84nqZlx62GTRKJJ+mJ4Ktn3QfwAVB00Nana8vmcSoWrddYaxujGJvzyaeWY9jdfwUleedI3Oz+O9XKCmOFZ9CHJvry/xAiCGkehBtpzedUtmrqkGWXbBvqNQhGAOxI+ozVeZGmdfn2ypCWRsUnMpBY2aVViBPGiF0g712hjnkM9RshQQ7tj1k6E0yvgWMNtbHU1823En0a2Xc8PrH0XKLUgOY4p9jEKbYUJU/eTQnXnTSW1yux5Lp/36SxtQ5RrVM0wgPtxhC1CGxsOUWsFj5fqh3+iqRInTgcLtjV4LQgx3B0iO9zPs= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Rajnesh Kanwal CoVE VMs don't support pin based interrupts yet as APLIC isn't supported. Signed-off-by: Rajnesh Kanwal --- riscv/fdt.c | 2 +- riscv/include/kvm/kvm-arch.h | 2 +- riscv/pci.c | 83 +++++++++++++++++++----------------- 3 files changed, 46 insertions(+), 41 deletions(-) diff --git a/riscv/fdt.c b/riscv/fdt.c index a7d32b3..115ae17 100644 --- a/riscv/fdt.c +++ b/riscv/fdt.c @@ -232,7 +232,7 @@ static int setup_fdt(struct kvm *kvm) } /* PCI host controller */ - pci__generate_fdt_nodes(fdt); + pci__generate_fdt_nodes(fdt, kvm); _FDT(fdt_end_node(fdt)); diff --git a/riscv/include/kvm/kvm-arch.h b/riscv/include/kvm/kvm-arch.h index 08ac54a..9f6967f 100644 --- a/riscv/include/kvm/kvm-arch.h +++ b/riscv/include/kvm/kvm-arch.h @@ -104,7 +104,7 @@ void aia__create(struct kvm *kvm); void plic__create(struct kvm *kvm); -void pci__generate_fdt_nodes(void *fdt); +void pci__generate_fdt_nodes(void *fdt, struct kvm *kvm); int riscv__add_irqfd(struct kvm *kvm, unsigned int gsi, int trigger_fd, int resample_fd); diff --git a/riscv/pci.c b/riscv/pci.c index 9760ca3..31ea286 100644 --- a/riscv/pci.c +++ b/riscv/pci.c @@ -17,7 +17,7 @@ struct of_interrupt_map_entry { u32 irqchip_sense; } __attribute__((packed)); -void pci__generate_fdt_nodes(void *fdt) +void pci__generate_fdt_nodes(void *fdt, struct kvm *kvm) { struct device_header *dev_hdr; struct of_interrupt_map_entry irq_map[OF_PCI_IRQ_MAP_MAX]; @@ -67,51 +67,56 @@ void pci__generate_fdt_nodes(void *fdt) _FDT(fdt_property(fdt, "reg", &cfg_reg_prop, sizeof(cfg_reg_prop))); _FDT(fdt_property(fdt, "ranges", ranges, sizeof(ranges))); - /* Generate the interrupt map ... */ - dev_hdr = device__first_dev(DEVICE_BUS_PCI); - while (dev_hdr && nentries < ARRAY_SIZE(irq_map)) { - struct of_interrupt_map_entry *entry; - struct pci_device_header *pci_hdr = dev_hdr->data; - u8 dev_num = dev_hdr->dev_num; - u8 pin = pci_hdr->irq_pin; - u8 irq = pci_hdr->irq_line; + /* CoVE VMs do not support pin based interrupts yet as APLIC isn't + * supported. + */ + if (!kvm->cfg.arch.cove_vm) { + /* Generate the interrupt map ... */ + dev_hdr = device__first_dev(DEVICE_BUS_PCI); + while (dev_hdr && nentries < ARRAY_SIZE(irq_map)) { + struct of_interrupt_map_entry *entry; + struct pci_device_header *pci_hdr = dev_hdr->data; + u8 dev_num = dev_hdr->dev_num; + u8 pin = pci_hdr->irq_pin; + u8 irq = pci_hdr->irq_line; - entry = ((void *)irq_map) + (nsize * nentries); - *entry = (struct of_interrupt_map_entry) { - .pci_irq_mask = { - .pci_addr = { - .hi = cpu_to_fdt32(of_pci_b_ddddd(dev_num)), - .mid = 0, - .lo = 0, + entry = ((void *)irq_map) + (nsize * nentries); + *entry = (struct of_interrupt_map_entry) { + .pci_irq_mask = { + .pci_addr = { + .hi = cpu_to_fdt32(of_pci_b_ddddd(dev_num)), + .mid = 0, + .lo = 0, + }, + .pci_pin = cpu_to_fdt32(pin), }, - .pci_pin = cpu_to_fdt32(pin), - }, - .irqchip_phandle = cpu_to_fdt32(riscv_irqchip_phandle), - .irqchip_line = cpu_to_fdt32(irq), - }; + .irqchip_phandle = cpu_to_fdt32(riscv_irqchip_phandle), + .irqchip_line = cpu_to_fdt32(irq), + }; - if (riscv_irqchip_line_sensing) - entry->irqchip_sense = cpu_to_fdt32(IRQ_TYPE_LEVEL_HIGH); + if (riscv_irqchip_line_sensing) + entry->irqchip_sense = cpu_to_fdt32(IRQ_TYPE_LEVEL_HIGH); - nentries++; - dev_hdr = device__next_dev(dev_hdr); - } + nentries++; + dev_hdr = device__next_dev(dev_hdr); + } - _FDT(fdt_property(fdt, "interrupt-map", irq_map, nsize * nentries)); + _FDT(fdt_property(fdt, "interrupt-map", irq_map, nsize * nentries)); - /* ... and the corresponding mask. */ - if (nentries) { - struct of_pci_irq_mask irq_mask = { - .pci_addr = { - .hi = cpu_to_fdt32(of_pci_b_ddddd(-1)), - .mid = 0, - .lo = 0, - }, - .pci_pin = cpu_to_fdt32(7), - }; + /* ... and the corresponding mask. */ + if (nentries) { + struct of_pci_irq_mask irq_mask = { + .pci_addr = { + .hi = cpu_to_fdt32(of_pci_b_ddddd(-1)), + .mid = 0, + .lo = 0, + }, + .pci_pin = cpu_to_fdt32(7), + }; - _FDT(fdt_property(fdt, "interrupt-map-mask", &irq_mask, - sizeof(irq_mask))); + _FDT(fdt_property(fdt, "interrupt-map-mask", &irq_mask, + sizeof(irq_mask))); + } } /* Set MSI parent if available */