From patchwork Mon Jul 5 16:09:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12359375 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F17CEC07E99 for ; Mon, 5 Jul 2021 16:09:47 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A75C260698 for ; Mon, 5 Jul 2021 16:09:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A75C260698 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.150472.278213 (Exim 4.92) (envelope-from ) id 1m0RAB-0006J6-Tm; Mon, 05 Jul 2021 16:09:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 150472.278213; Mon, 05 Jul 2021 16:09:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1m0RAB-0006Iz-Qm; Mon, 05 Jul 2021 16:09:39 +0000 Received: by outflank-mailman (input) for mailman id 150472; Mon, 05 Jul 2021 16:09:38 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1m0RAA-0006Hc-G3 for xen-devel@lists.xenproject.org; Mon, 05 Jul 2021 16:09:38 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.109.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 2648351e-e4d4-447b-9e30-6bbd54dd1573; Mon, 05 Jul 2021 16:09:37 +0000 (UTC) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04lp2054.outbound.protection.outlook.com [104.47.14.54]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-27-PRlD6ZXqMw-ewHfLXKsgHg-1; Mon, 05 Jul 2021 18:09:35 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB3293.eurprd04.prod.outlook.com (2603:10a6:802:11::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4287.32; Mon, 5 Jul 2021 16:09:35 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::99d3:99cd:8adf:3eea]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::99d3:99cd:8adf:3eea%5]) with mapi id 15.20.4287.033; Mon, 5 Jul 2021 16:09:35 +0000 Received: from [10.156.60.236] (37.24.206.209) by PR0P264CA0094.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:18::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4287.22 via Frontend Transport; Mon, 5 Jul 2021 16:09:34 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2648351e-e4d4-447b-9e30-6bbd54dd1573 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1625501376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=y519G2kPDVMzATqyC7RjCSlK3dqw0cUbYWZl2eMBtQs=; b=KDpeV6GW/bMOoOD1k/8gR0VhncPpMA0wtT5ialf2U/LGh8ziTjxGKZ2DyQ/OfWWLEYAHKn BrQDYSixHbPYt/w3U+jq3rIsI1MrU181UMEk6XbXZzBna5Pc9VuFPTNZTxPAA43dgrw7Sk 8a+zQoUREfxVkwaLMvfXQ51EcqgB0rQ= X-MC-Unique: PRlD6ZXqMw-ewHfLXKsgHg-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cJdjbEC5SB16phTMi/MrUCGzUiYVJd4uQX2zRH+NJtrdkLVxLUnHWAXh/8e2s69G1totuRJt2GmPJKworjtUyQgV1G+TkZPJkJcbXaCDwhrzS0kY4MAGoOYgQEnTf4YMczbRuPTQF6evL+bhMFmYIrmEw8VQgDIkAWFWOx/yLjMm9mbvCv5WT10IESKL+vkQVA9kcJfyCU2x368fjCCyloN6ALzQ3/RhTY9XTFoT6cKpNZR728a77K5Za5qrQsPDaNBd9gk8UUsqzX0Xf5DFbj+8BdhQcx0yvuPfFyKgciIAKpO9og0+Ve92BIW0qz24jHat/RpBlMXIL7Ez8OxWhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=y519G2kPDVMzATqyC7RjCSlK3dqw0cUbYWZl2eMBtQs=; b=R3r9ck0aSgjbU+5YnKfVp4jm+EBKwVav06ughNPFLddzzCjjXeEEnqCS+bHlcmyCUKLc3yxDll0SyrrOijxCOvdFv2qJS/ewPVZOcS13qs9djGFPFK41s4re75ZrRYtndpTDqI3x0+GfVJCicbGIhQ+fX1/LkABNB2Ujch85W5wmfPP+TzEMgb/Uy3Gk2BcZmB+TI6HlubhxaP+GwUmWP28HHztVXBxKuz+QSYazuknEAvZdKXr2eEvYC3hb6/AhUta2rsXo323nKPexpTHQaGeCvhrEnJjLl0OhG4iwFM+fUuiEGSJVyT4ddevpJyEPo0wSqUlM/uJfiAIhxaLtnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none Authentication-Results: citrix.com; dkim=none (message not signed) header.d=none;citrix.com; dmarc=none action=none header.from=suse.com; Subject: [PATCH 08/16] x86/P2M: PoD, altp2m, and nested-p2m are HVM-only From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , George Dunlap References: Message-ID: <694a6590-0018-223a-c796-3e1469ec354a@suse.com> Date: Mon, 5 Jul 2021 18:09:33 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 In-Reply-To: Content-Language: en-US X-Originating-IP: [37.24.206.209] X-ClientProxiedBy: PR0P264CA0094.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:18::34) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e302bb8e-d98c-4ade-d562-08d93fcf47fb X-MS-TrafficTypeDiagnostic: VI1PR04MB3293: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2582; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8ydcXRPs2clSuuB5QbUaMYADcAxwhQv9YM0i9FIHTVyVPenHCNJtbMH5x07YXfos5mu0S/nm9j39D3MbmeTuE8+jtxJUboTQIreFoGFzJbpA4PqKLQ5vXhCe71enCsydtk9ptQ1rfa8xWBdWFeR9gQ9d5TmzC16AA4qn6OTxQ0hfNQZd+QOgMbAmMukqzuXLINgCJTkph0ATtFpF++CgYY5VQNzbRKp/zDbbToM9LxT6HGrGXlmFY8YIvmPp8/lji8qWsnN+r8hCJYeCsgubeJ/8xS7Cs7HTzNl7/r6v90njsWaC3yRSF/v8uKHyo8CjHWrKYETiz1le4ybWT5rtVTMUeUqiOEtXRK4LHxQuE8M764Er6mrYoaw7lPhSdPzgY1rSzU6Iuj5XsaV6jcXlLtNKfowUmsyP8e08ZqSSUZECpOOp9iZfu9jgqK2/SeGwn6enqSTWnT99XgNWML2faktxGrOyWm/ljxtJM18u9IX4gtS3GvoUpGFa2NjWbZT2ucCxpwL1s2iOWeU9weUcEHVOsBd9/q423dsUmiz735kbeTEBRH6zIBCKy+NrZbTi5Mxzg32qx2v0BVQ+yeZ5V1syDbBBJ1WJZ+39pijxhFgh8EUh0ufYT71Z4f+mOZiqmULScnyEzfel3ZAsheIo4vClJqPMCuriDtfQVWQzbx1deF0BPHAkFZZW+ApjH5mz3h1oQ/4gT2xnPvr0jF8J4zrpIeygEsEiQpz9JUAGMd4= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(346002)(396003)(136003)(376002)(39850400004)(5660300002)(316002)(956004)(66946007)(2616005)(16576012)(26005)(38100700002)(186003)(66476007)(66556008)(2906002)(36756003)(16526019)(86362001)(31686004)(6916009)(54906003)(83380400001)(31696002)(4326008)(478600001)(6486002)(8936002)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?YHjpTWFseAlFEoVQ41Vm2kOjQ/GQ?= =?utf-8?q?THwEfHqv8QeHcRTI3uUCWQSLl8mkBHWqY6PXxgLnu4Nz/oZ+kU8ka6Mg/5seCGFKR?= =?utf-8?q?2jMTY+cnVNpQuAGeMVhN2ti0c4nUJsXSBzorZl9Kcl7hK6HCOAvWEmWm1ugWcjHG7?= =?utf-8?q?DzO/Jr5LH4v9oXFQTamFZr7vJsogcXyy/8E5q4bBP1I2oFGw7PJ/8Qqp5q//ubXT8?= =?utf-8?q?SG7/45Dzrhtj1wuerSnSWPHNZMScXqiXzzMW9+xwy7xntlpq/TIU0D1gg3FG6p0Ox?= =?utf-8?q?U5u8qazSUi2Ln4YNJvpCRl3MpiyuFZ8xGBQ3zYO/P7dqf8PLwaIwISvwSd7zVNkxY?= =?utf-8?q?vzdlyuBKA9Fx2+0XEyVrK7SAJ58cReewpiwE5SeKTsZsPFBjlhAHOIcqp2aDUM+Je?= =?utf-8?q?C6A/ZPWUWCBq1YZN4c/yWcD2F/mcVZ3rg2tmhLCNO+iz/Q3p7wSZwnpo2IjNaGa5b?= =?utf-8?q?19YieffXjXNmhZKzoTL8KITifzlxJRmiqnKecyl29jO9X2hho64uyIOHB0mdn/lmt?= =?utf-8?q?p+FNoFYtlW9qJtM1xOQR2nFwNQHpZ++b6wOjWoTywBvK7tN8NLgKxExBwE3McfJ2P?= =?utf-8?q?FP5OqD0szTDtMJrc4CgxaUKAG06yu3WQJfUFm1LLqlG+BGlNaOdFdJRSY4QOpXwrV?= =?utf-8?q?upurVhBk+3iBoZLP9ikAdkDtzI/n6uknUcB1VJDdJ3adrlblHOZ2VSa2y/o1VnQpr?= =?utf-8?q?jpT43JPxQilmJoM570hIoFdv+J6AlLF/LPe1leCB+NJzACp3cB23rqiCi9divt/uc?= =?utf-8?q?Vw+GOW/Ub4GsVjfzAf2Ut2wIk4ERkgS2X44IPpGB2HfPEDE4GTeQI0pyLl0VhX6iA?= =?utf-8?q?F4IFSvf1YCXHCZ6nfc1gdGFUw4xcV4/UG/7rrxDZp+G7LNAgTK1vVWoZw7KhlC/o5?= =?utf-8?q?V3+fjEQ1ylQiQzQU+k689KANwMDvT4MAbQ3Ujnfwdtk4geYdjMLu9dXEsuYrJFByo?= =?utf-8?q?U/kap/aLymBXLYXh8wvxyE7mutsjxwZ0RxztqZe6vm2dDtCZNi4kkgInBd+UUzmSP?= =?utf-8?q?NsR6ME4WlLj0w6LjZ0WLkQCSoVMgDlhlVmNGv37RBN49NyY+A/he6nvNqlbkGAipu?= =?utf-8?q?qCIa4B+HaEw/Zz5fzOdMB6nQ0TGP6GSypIiL4k01/q86e9u/QlwyApEGeWWdXA/o+?= =?utf-8?q?ZnFYAPh6zTqQkdNxV5bdAdopvp3ksXMeLTyrllmJsGPo9CkHH9cgwNSQOaUifF9n3?= =?utf-8?q?9fgVj3jr+zn6vV9PS0YBr4+5q4orXn0qC/q0CpLJ3YgdT5tag+LJ6pNxD+9SXX0dH?= =?utf-8?q?nbPMrsMAvkW0p+at?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e302bb8e-d98c-4ade-d562-08d93fcf47fb X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jul 2021 16:09:34.9151 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: dXDI9Ms6SN1FjMQOc+eRrKRqZ0fZwWW/D69fSFEukTyyNdS8eV8CGQf8Srbk00XFOzkqXL/MhcWNvTttUJ3nqg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB3293 There's no need to initialize respective data for PV domains. Note that p2m_teardown_{alt,nested}p2m() will handle the lack-of-initialization case fine. Signed-off-by: Jan Beulich Reviewed-by: George Dunlap --- a/xen/arch/x86/mm/p2m.c +++ b/xen/arch/x86/mm/p2m.c @@ -102,6 +102,9 @@ static int p2m_initialise(struct domain p2m->default_access = p2m_access_rwx; p2m->p2m_class = p2m_host; + if ( !is_hvm_domain(d) ) + return 0; + p2m_pod_init(p2m); p2m_nestedp2m_init(p2m); @@ -259,7 +262,7 @@ int p2m_init(struct domain *d) int rc; rc = p2m_init_hostp2m(d); - if ( rc ) + if ( rc || !is_hvm_domain(d) ) return rc; #ifdef CONFIG_HVM --- a/xen/arch/x86/mm/p2m.h +++ b/xen/arch/x86/mm/p2m.h @@ -17,6 +17,8 @@ #include +void p2m_pod_init(struct p2m_domain *p2m); + int p2m_add_identity_entry(struct domain *d, unsigned long gfn, p2m_access_t p2ma, unsigned int flag); int p2m_remove_identity_entry(struct domain *d, unsigned long gfn); --- a/xen/arch/x86/mm/p2m-pod.c +++ b/xen/arch/x86/mm/p2m-pod.c @@ -1135,6 +1135,12 @@ p2m_pod_demand_populate(struct p2m_domai mfn_t mfn; unsigned long i; + if ( !p2m_is_hostp2m(p2m) ) + { + ASSERT_UNREACHABLE(); + return false; + } + ASSERT(gfn_locked_by_me(p2m, gfn)); pod_lock(p2m); --- a/xen/include/asm-x86/p2m.h +++ b/xen/include/asm-x86/p2m.h @@ -679,8 +679,6 @@ static inline long p2m_pod_entry_count(c return p2m->pod.entry_count; } -void p2m_pod_init(struct p2m_domain *p2m); - #else static inline bool @@ -709,8 +707,6 @@ static inline long p2m_pod_entry_count(c return 0; } -static inline void p2m_pod_init(struct p2m_domain *p2m) {} - #endif