From patchwork Thu Sep 30 12:34:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528207 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 51634C433EF for ; Thu, 30 Sep 2021 12:35:13 +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 F1DC861381 for ; Thu, 30 Sep 2021 12:35:12 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org F1DC861381 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199860.354165 (Exim 4.92) (envelope-from ) id 1mVvHE-0002Bd-KI; Thu, 30 Sep 2021 12:35:04 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199860.354165; Thu, 30 Sep 2021 12:35:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvHE-0002BW-FV; Thu, 30 Sep 2021 12:35:04 +0000 Received: by outflank-mailman (input) for mailman id 199860; Thu, 30 Sep 2021 12:35:03 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvHD-0002BO-IT for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:35:03 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.109.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 2449351a-2bed-44de-bdc3-aea2482869e4; Thu, 30 Sep 2021 12:35:02 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05lp2106.outbound.protection.outlook.com [104.47.17.106]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-23-BQHqtiwQPkGOwPYhZzIz8Q-1; Thu, 30 Sep 2021 14:35:00 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VE1PR04MB6383.eurprd04.prod.outlook.com (2603:10a6:803:11b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:34:59 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:34:59 +0000 Received: from [10.156.60.236] (37.24.206.209) by AS9PR06CA0226.eurprd06.prod.outlook.com (2603:10a6:20b:45e::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14 via Frontend Transport; Thu, 30 Sep 2021 12:34:58 +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: 2449351a-2bed-44de-bdc3-aea2482869e4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005301; 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=PbKi1v7uP9b6x4lBqFwjoXN28PwSTCvFjDe33pv1YU8=; b=cWg/DoKMo8jMX2NCzV96eNxXPTBYNuYyo75/jRK5qa0a3nlGrin6ohDQixzyZ4pkRCSXzg aPyBE1qjVxWnocWu0DAUkZHpQla64MxFBp6tJFNFy2w6vXq8i9+X7CuoIRSAQ9DLPVKU0z kL91O/lFYjv80aW7nVPiB6/5PHLBgQY= X-MC-Unique: BQHqtiwQPkGOwPYhZzIz8Q-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V34JzRotiHrrRxaj62lpYZ6LyQ3MVAns8brGxGNFisP46zu+4Bm2gQlHGLyEaNO/mYdsKcps2/uKh53FHs1miNRKwNrotDJi0GKE25MeMCdi6EdDq+7bEXzwWmfCC8Vb1kNB12Y/ENAhsgdOo9/kBGb8A3SQi6CyQmtFGR2Cj7HDwFFsBBeBXkYWlRb1DWj8KV4OEqb/WmB7cJ0Kbr7cLj9rN+GXK8hzgdFgAKWWZTooUZXfHKjsfuxcaQeeSPGwcuMI2ymxJ6ThJi+/Gzo6yBGAPiXZbvdo1QyV3qp4O/MdGt2kicoZhgFD0IKSxP0aioVPgijZXbGVHGJjKq6hDQ== 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; bh=PbKi1v7uP9b6x4lBqFwjoXN28PwSTCvFjDe33pv1YU8=; b=LQaWmTodXJtHB8gox1R4O2husN39gb5WzDaABpRF4C7J/bmNGmaUtNjN3+3uYIZlrm0TEcfDGg5efuFYPH0DjLu30OXUp0HuoaKrvvEqJHui0ziurBKC5SFDY60KnXVXaBnCrRqLsSANtshNj84G6U2C1yb3EKEqQScH+xdTgNXFKrhbKHmFPVYHpJyM6BxRNuqtatM1BaxVEjPKKBCCzgnCI9D44vVMtbiSIMZzOKAdX1fhrg4Dmb2Caf7A7m/sVMaLxIofNos202jjOEFm4Vipd2BP67XaiIixaqoCxh77L9jN3GVCsU8COWchafe185LNCAzRBGzWMi2JgsCKtg== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 1/6] xen/x86: streamline set_pte_mfn() From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: Date: Thu, 30 Sep 2021 14:34:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AS9PR06CA0226.eurprd06.prod.outlook.com (2603:10a6:20b:45e::25) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6ceb9de9-bca4-4c85-34ae-08d9840eb73c X-MS-TrafficTypeDiagnostic: VE1PR04MB6383: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6430; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TC1mRBq40fgQodWv/jlWln35z0/4GeyyPOSAzy0hKfoTPda6IsbItMlXTXqjk/zB/Feoal2zVIeqmTdFCH/Jyff8olq8/F49T61Lj67kzXz8lTrJCffUHgnAIf0Zq8Vyy/kM8HBIFgGGySYmxbxVw+Q0IxOvGFs1GlMwkoqbeUVMIgqcXQkIwUSWWTmXkmrdBb28JuYF0nSZVt1zVbseyf753N/gdjc0kjj1dcoAe1vwTZS1Vagiyv52uN+9p/yUbuX5+AiznQ6ow7yxu52Y0uP6abHkiLK5SID5DEoYcFb2+R9X7icu86PQ6KhSRPIiG6FwNW4uGj1W61FyL5ptn/hcYCW/hC92OwxhaX0FBMyEfhvlO0c1avZA6HjTqr9BGjzaVY8ICZCB6+nWokNhH50wVIi2bY9nn8NkIDCFZR3easZXxAiDg4rWNaZG0LcHKvam5b55uuW9C8idAYt8hC7dW8mn0qCWfSiwuAt39d7XyTXZuxWAJrv//idBCe2b0mEMp4elJPtsXfWRM+6ZThKaG+EwpaZcgbYuJHBwl8rwpxeMh2E0qRtoC0vksGK4mL0msprkka+OgNt2cC6l9Ozp8XW8lJcQdtJghpA9vxrteUXg6YWbzOTgVAum6yuPQsTN/zd+PiNpH8wvUUQ247WmeGdhEiLTmNqJzLcKm+hdDH03qSG6BkR8uOUWbHS1pyE7ntpSjw3DAS6TMAvTEloO7pvc/llKV5r+nE7BO2M= 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)(4326008)(2616005)(186003)(956004)(508600001)(31686004)(66946007)(83380400001)(8936002)(86362001)(2906002)(31696002)(16576012)(316002)(38100700002)(110136005)(8676002)(36756003)(6486002)(66556008)(66476007)(54906003)(26005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?PX3ixFBI+dxPkaa7ZWsJzbO2EPa5?= =?utf-8?q?MLh4rUBTPK2ZvHvlERLXVsp++apjLFWyom9ShcwRGsrOgnktxLfRrOWD9Yzg0k0eZ?= =?utf-8?q?4Zkl31tXAfadw7kN859uc4pZF8TVIBMdZz4CRYtQIXkzjklkh16LPhRxVEJRvuWqC?= =?utf-8?q?mkWJO4dFYj7KyNvFjt72Y9gYbNjw48ZFtj4ijgBD8IWDurzXHJ/U/0jceOPoJDRO+?= =?utf-8?q?kZaOJ6quDUJIqFbZR98wqWysuvUahLTFHs4YGb5cybL5cmkouJM6mAALS5x2lnbXY?= =?utf-8?q?b31/pjP1iCVfs0y3mpCvxKQrS4Q+PEWxc/d7MUyYH9KYnAoCCdCkzNfwzyksxJZ9u?= =?utf-8?q?89lW+38SOixx33qHe5cz1lhUwkIN8S65J0pWcdzM2hGh9XicRXjqkZ0zlDvt7CML/?= =?utf-8?q?eGEs3P0JEADPJKcG1Zgp+2T1X8rtkQOB3n2r48/+YBDy1evoyD666TeRwGsrsyrVP?= =?utf-8?q?aRcc6qUtX2X6OY0Fekx0zNCjDhD1KMCUZa3e4NSpkNTeQ2lwsdbas4+nMhEsy4Qmf?= =?utf-8?q?UlPKds4EVRZX1e02iCQtKjKK89ftNmGijQYLedxhXQsb5wiG16IDkuKisFRHb3w7s?= =?utf-8?q?txfeZifp1l4ZFU//V3XZRfIbvLLreyXawVf4SXbSKqwBUUtAAAezcnzYqdo0xKZ+q?= =?utf-8?q?VVk3c+f9VMyv1qzsmpfygTM22e2wqI9hJsbjJ3b5u4eK4I3yakejlnIHFr+xOE9B3?= =?utf-8?q?uNxFSWfY4hy5wp6xBZoxkf0Go6R82zkNW1GBN6FLCcaPHShIHhLhUJYU9D/BroBNc?= =?utf-8?q?iGEBO1ywVZjFbsJJAYXtjIMSoCRDzQ9Li6SgIm4YUNirZ/rIp4nWJtr0No+aIYPZ9?= =?utf-8?q?n4vDuASQUmMJcDMb9rFd0HGXZOwfqwzEdZMTzu8bMaxT3QJYl6PmPKiWzdub5+pZC?= =?utf-8?q?u+PNZAHhRzF/EWGqdHtz3BDTSZIgS+PKkisJab5gXEvHjL2j5Lb95enjgxfbK4Iwq?= =?utf-8?q?tfw4k11ei5oAU1s9jXNBNSFP8/78WE8yS6wxHpzT7Cts9GLzz4gM/Wg8c3y+9C9yA?= =?utf-8?q?VqkJEmwhOR/ZBVes0hvEhqSz6WWXM52HpuFEL/5IF4F9+9DJS9L5dJMEAeTlCKqDx?= =?utf-8?q?+K9020hDyoVuCB+96ZRLKhunXMtOxcQ1c86MxAc7PJXYfw9QhetTelrfeW419diCA?= =?utf-8?q?2bcWDVouXQXoEuQQn7ogRn8xV2dMOIsXFKvBWkZPZsfMJYdzl3M7a7v85n95FiAvx?= =?utf-8?q?7cT45eTDEs/PMgzNAIZlb+1zNhnfdqqVacU5zaLqHrKYJhkcLgwFGmV7C9CzW/n+9?= =?utf-8?q?xxUGCX9gQ6alpI6m?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ceb9de9-bca4-4c85-34ae-08d9840eb73c X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:34:58.9369 (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: MTCCM6GdL4RD5oKcxgFMrJJWni9iY3k6Cc66Fcm16BqN2uOyT8Q+giH0k25AdM9GSW7VfEOWDYcRVjjYFIxMLw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6383 In preparation for restoring xen_set_pte_init()'s original behavior of avoiding hypercalls, make set_pte_mfn() no longer use the standard set_pte() code path. That one is more complicated than the alternative of simply using an available hypercall directly. This way we can avoid introducing a fair number (2k on my test system) of cases where the hypervisor would trap-and-emulate page table updates. Signed-off-by: Jan Beulich --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -241,9 +241,11 @@ static void xen_set_pmd(pmd_t *ptr, pmd_ * Associate a virtual page frame with a given physical page frame * and protection flags for that frame. */ -void set_pte_mfn(unsigned long vaddr, unsigned long mfn, pgprot_t flags) +void __init set_pte_mfn(unsigned long vaddr, unsigned long mfn, pgprot_t flags) { - set_pte_vaddr(vaddr, mfn_pte(mfn, flags)); + if (HYPERVISOR_update_va_mapping(vaddr, mfn_pte(mfn, flags), + UVMF_INVLPG)) + BUG(); } static bool xen_batched_set_pte(pte_t *ptep, pte_t pteval) From patchwork Thu Sep 30 12:35:22 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528209 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 13FA5C433F5 for ; Thu, 30 Sep 2021 12:35:38 +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 C0F2461381 for ; Thu, 30 Sep 2021 12:35:37 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org C0F2461381 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199867.354176 (Exim 4.92) (envelope-from ) id 1mVvHe-0002mq-0A; Thu, 30 Sep 2021 12:35:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199867.354176; Thu, 30 Sep 2021 12:35:29 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvHd-0002mj-TK; Thu, 30 Sep 2021 12:35:29 +0000 Received: by outflank-mailman (input) for mailman id 199867; Thu, 30 Sep 2021 12:35:29 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvHc-0002kX-VO for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:35:28 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.111.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 7087557a-fe7b-48c5-8378-b1e43e0c7094; Thu, 30 Sep 2021 12:35:27 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05lp2113.outbound.protection.outlook.com [104.47.17.113]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-20-aoc0CG_oOqS0JfWrqru6WQ-1; Thu, 30 Sep 2021 14:35:25 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VE1PR04MB6383.eurprd04.prod.outlook.com (2603:10a6:803:11b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:35:24 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:35:24 +0000 Received: from [10.156.60.236] (37.24.206.209) by AS9PR06CA0219.eurprd06.prod.outlook.com (2603:10a6:20b:45e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.15 via Frontend Transport; Thu, 30 Sep 2021 12:35:24 +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: 7087557a-fe7b-48c5-8378-b1e43e0c7094 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005327; 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=eWRvbp7ta3owYpcdKj7PO7T0r2HXZ7zs9WVfAD35Uvw=; b=UXXlauToOjHhrRu8X3wJHT8P7ehbax9MC1OeZ3RsHo86vGKJB0it7YUxco6xoxXbkgaw3S ztAjrHLkaA1JeyHZxaaQ5wHEoNMwZX1QGNvQN1IEDv9/H0rHnt0ku5QsTmpa9foc2KLImI MA1BJaalnudb+f5VWlA01VsvQSia5Sg= X-MC-Unique: aoc0CG_oOqS0JfWrqru6WQ-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gHkFibb5LYshIVpl0Jp9XnQZEGUsmW7OWVWVt0BujZRFHmCG+Bc50cgQqtzeRjcbiYLLLyPp0v7NQqVfrtBiNOqdMjnNKS6XkdwG0hx0DPY9PKuUk97H+nWKvlabCeMYG0nO6Cv3dX40QvfHKH3weYlGrh0gofHGLkrCYCtRRdQpVpZyWSlxBSEjB/JHVZyboqadYFIGEYsDJIR/N9YdBetu/2osTnEew84x+VfLMq3lcMVRoDoEK+7uwwI/2+I3z7XD5GHGfSHJTOznViGOtsnJKSWNmsn7GF/fhTZiPrN19YwZsuiqmddGoZr/i4zUXs4sWaQ8xhoRPc6WEvFh8w== 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; bh=eWRvbp7ta3owYpcdKj7PO7T0r2HXZ7zs9WVfAD35Uvw=; b=YsImSKohjx7Tx5XUvZCvBF0KUB/FrYqV17rGkQVV+9k75XwtAkVl8oe8qcsDUAD0lvstAt1+cYkDhiTXIoYMHE0DnpWyPbXLceIXXlEi0QICl3TcgypmmsBapKE59xmxL/anh/vyg+M0BjWzHKOrgvll6/aMGFQLIyEYnl7dw5tt0y/rd8xPZQI/GwpYH6WK2E7BLRFMCOnsMvRps7GY0/EMEmflRe7xvtpwfqbUb0Vc9MeFe+lAtlwTkSwR/4uxHmbgoZvgRIZjhb3tYtq9STA4tIjUjf9s+SJCOsrclV63PQ48ZXwH/Myqx2KVt1iZhJ0XmcF0nv6BARaYO4wCbA== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 2/6] xen/x86: restore (fix) xen_set_pte_init() behavior From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: <57ce1289-0297-e96e-79e1-cedafb5d9bf6@suse.com> Date: Thu, 30 Sep 2021 14:35:22 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AS9PR06CA0219.eurprd06.prod.outlook.com (2603:10a6:20b:45e::10) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 74700795-3594-4d3b-fd63-08d9840ec687 X-MS-TrafficTypeDiagnostic: VE1PR04MB6383: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:3173; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: w3I5bU96eYptQzelHHw9QkIo2SbqWLNurMYmpBlW2DK5UVBHPgPgtxQg9tSYuQ1lObrEXgzpRgOfhMx4S2WELbT6wKE1zE0/fE66OBbI4c2JDgnoAcsWUMN3f6Qlo4hAJ382EcUf2prMHo5u6YCXoNDZyv9NBzCZyZewBA1AdH29qlEZaez7fVEfR7Hu+p9HEs1+C9AWlDjsfCIJz9KVgIII8PNMR6pLwAcL7Ie5bUqxWgYza07SitTUTdY/P1Ca2ATtd/A6dyk7aCQ1LHPGL9SS56Iv4bL0ZiY2K+5TW59ElCM4kaHi+9Rf+JALzQebeV5WYeid90F9gDrQVdjMihv239FLVaMqfYu6/2G4S8oDfpoIZZVDLCiD24m7SR6/in71fd22+YeL7VfC30TPdEiuQGCkeUZNMmHHcirbqkqsWSI12lfu7wI1ycT0RpeXdwnRiMLpNmspBYyfzAkLOsMTdBLYjVqHKV8Uq6NdiuTeqHzTAcLP8OC0Fxy5JU1uz58MH6FBWGQfqln/WjRoidjfFoFigOVwXBjbzqPFKrgXm0zChU4PaZZ7qP3BwbKSoIj6/9UJAhAwj0p30VywGdGiiUNUzd8tn1+EO3lehmpuFrKu3PpmH+shMcfWeE8a1yz+7N7F/iF8YXYmIEqtS+wgayvOWBFLZbFq+LZJW2OSEZECzQ2FjhlKRORfS4JHGLxI/x95rUKr2pK36L+m69sRDzxNdXDqPgBH7L+dstoBoQzCJZEYIQLtmU+xnYIh 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)(4326008)(2616005)(186003)(956004)(508600001)(31686004)(66946007)(83380400001)(8936002)(86362001)(2906002)(31696002)(16576012)(316002)(38100700002)(110136005)(8676002)(36756003)(6486002)(66556008)(66476007)(54906003)(26005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?xTgVkak16NvHu3cEimEsqTTCl7H7?= =?utf-8?q?1WZS/PUzC1HDPD7k+tQL98Ol6jvJmSQFZI/Q78DDXM8dT9UIJFXPlGTg5wNsyfgIz?= =?utf-8?q?52gkadHHYAEXtHnfYzQNlPEPCfpXqtaZRp0fQSrFpPk+VZqMkMFSDEGC5KykwGjAW?= =?utf-8?q?5GTa+yu04HcI3LvUuw6TCy68j8L4aGej9nPWYF9oa4EELh/Xbpl7ZsjnyIr2kdwDO?= =?utf-8?q?jmeBTU/q4rGMRGlG+X4/toD9Bhf0U54wth1JtJayb02yfG6Sx4dYz6AlRWpOahpsv?= =?utf-8?q?03z2abTYuv0SJoFrNR3eho4uMI5XjyPAgsh/K3gHkRbRQXiC4Q5QyESU1heAtZo3J?= =?utf-8?q?B1YA/QCMVvEMRvj8e/ZK4RsAIstBaNaqEg0lFhUmKLAI9Y/SZZmX5ouYFfrHLmRGc?= =?utf-8?q?//oQZzi1A43X5GLxwGRNVHPgLQb9cv87ftHd5ZD4/k4EOf6DzsRn4soCjuXuEM4WQ?= =?utf-8?q?NLTZqDx64flupfNn5CdYX4G9zmo36B7FtIH5ho2p1F1ZEmUNZqkDKaRl07T0RZksp?= =?utf-8?q?GqYDlQfg3jciSZXXHkNf1L4xsYXUeNHOueQGVRPFwoQtP86y4P4DjYNgSxnAKE4G7?= =?utf-8?q?A3oWPe4qE2QAGi/NXFjEbz2h9XNAC9K+SbLOrW2whiLcOXb9GlMMHKjI5NnBvWP2a?= =?utf-8?q?nBp+D27vYxLtqk8Kiy53VC4JQce+NbhmzsK0vLKArmWIV528oki2nquAsZXB9v8bx?= =?utf-8?q?mzY/yGymNG9V2nzw8boh2tXSQYQaT89fj4CWtxIG0kSI9+3nofTTOyi6BMdfILN5Z?= =?utf-8?q?rBn192UUMue2o/kPMHyQbNN8WdLOYpTo4b1t5f6onkndxpul+HmzJhP/LIypziHAR?= =?utf-8?q?u5DxJPw4K7rcOjZDL6A57lRLqneIlMPmZU8rH5eAuhnB+dSMq2x3lEYXEVnv5yigs?= =?utf-8?q?1bvd2mI3LIMCzWSVvaOBeFVhXdsSABCMiYb2iF/dG/1EEJgtx2wQp+IJFczDqQM8S?= =?utf-8?q?dieA/oeLfJVCd6VTmi7AnR5cuTNRcj8nZqv4Y/NJ8vEjcBQw7UlTexlu2AOYOXntY?= =?utf-8?q?aM7oqXZ6tJX7X1Adsvbw99cFB2Op+cNnGGArEa5iWeFBvhNVgidmlVaCn9yDH+ioX?= =?utf-8?q?jnXWfZmhI9B+XSzach7pgzkIpeV10Hp1IF3ZXiKsXRn2bb1SLx+GzhttscqSuCjhy?= =?utf-8?q?oRAb0YJIcPkINShQsE+tKvTwyUkbo0z54ySWYQtMCLH1af70dDftqKn35qDS0r108?= =?utf-8?q?JMkhk3YycISxEO739jeiROP4vBEAG3Sd+6xqqSHHH6dlV7EnSH3Vo+EakO3a/jG/F?= =?utf-8?q?hhROjRzqBJAxvm2V?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74700795-3594-4d3b-fd63-08d9840ec687 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:35:24.5804 (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: Z+QpJ6hdD1dvtUjfh20b2SeBFtCK/5mrepLbPm7M8obAJPEYT8rkLVValbSZp1jWDTxr/UUqZCjnonlfRIpSDA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6383 Commit f7c90c2aa400 ("x86/xen: don't write ptes directly in 32-bit PV guests") needlessly (and heavily) penalized 64-bit guests here: The majority of the early page table updates is to writable pages (which get converted to r/o only after all the writes are done), in particular those involved in building the direct map (which consists of all 4k mappings in PV). On my test system this accounts for almost 16 million hypercalls when each could simply have been a plain memory write. Switch back to using native_set_pte(), except for updates of early ioremap tables (where a suitable accessor exists to recognize them). With 32-bit PV support gone, this doesn't need to be further conditionalized (albeit backports thereof may need adjustment). To avoid a fair number (almost 256k on my test system) of trap-and- emulate cases appearing as a result, switch the hook in xen_pagetable_init(). Finally commit d6b186c1e2d8 ("x86/xen: avoid m2p lookup when setting early page table entries") inserted a function ahead of xen_set_pte_init(), separating it from its comment (which may have been part of the reason why the performance regression wasn't anticipated / recognized while codeing / reviewing the change mentioned further up). Move the function up and adjust that comment to describe the new behavior. Signed-off-by: Jan Beulich --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -1194,6 +1194,13 @@ static void __init xen_pagetable_p2m_set static void __init xen_pagetable_init(void) { + /* + * The majority of further PTE writes is to pagetables already + * announced as such to Xen. Hence it is more efficient to use + * hypercalls for these updates. + */ + pv_ops.mmu.set_pte = __xen_set_pte; + paging_init(); xen_post_allocator_init(); @@ -1422,10 +1429,18 @@ static void xen_pgd_free(struct mm_struc * * Many of these PTE updates are done on unpinned and writable pages * and doing a hypercall for these is unnecessary and expensive. At - * this point it is not possible to tell if a page is pinned or not, - * so always write the PTE directly and rely on Xen trapping and + * this point it is rarely possible to tell if a page is pinned, so + * mostly write the PTE directly and rely on Xen trapping and * emulating any updates as necessary. */ +static void __init xen_set_pte_init(pte_t *ptep, pte_t pte) +{ + if (unlikely(is_early_ioremap_ptep(ptep))) + __xen_set_pte(ptep, pte); + else + native_set_pte(ptep, pte); +} + __visible pte_t xen_make_pte_init(pteval_t pte) { unsigned long pfn; @@ -1447,11 +1462,6 @@ __visible pte_t xen_make_pte_init(pteval } PV_CALLEE_SAVE_REGS_THUNK(xen_make_pte_init); -static void __init xen_set_pte_init(pte_t *ptep, pte_t pte) -{ - __xen_set_pte(ptep, pte); -} - /* Early in boot, while setting up the initial pagetable, assume everything is pinned. */ static void __init xen_alloc_pte_init(struct mm_struct *mm, unsigned long pfn) From patchwork Thu Sep 30 12:35:52 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528211 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 20709C433FE for ; Thu, 30 Sep 2021 12:36:09 +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 C0948613A5 for ; Thu, 30 Sep 2021 12:36:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org C0948613A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199876.354186 (Exim 4.92) (envelope-from ) id 1mVvI8-0003OB-8w; Thu, 30 Sep 2021 12:36:00 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199876.354186; Thu, 30 Sep 2021 12:36:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvI8-0003O4-5w; Thu, 30 Sep 2021 12:36:00 +0000 Received: by outflank-mailman (input) for mailman id 199876; Thu, 30 Sep 2021 12:35:59 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvI7-0003Nq-3v for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:35:59 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.109.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 89c7f0a5-7e08-470c-8c32-c4657eb79df8; Thu, 30 Sep 2021 12:35:58 +0000 (UTC) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02lp2055.outbound.protection.outlook.com [104.47.6.55]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-23-4iLhtgzoOE-IdxjPXrGF9g-2; Thu, 30 Sep 2021 14:35:56 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VE1PR04MB6383.eurprd04.prod.outlook.com (2603:10a6:803:11b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:35:54 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:35:54 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM6PR01CA0058.eurprd01.prod.exchangelabs.com (2603:10a6:20b:e0::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.16 via Frontend Transport; Thu, 30 Sep 2021 12:35:54 +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: 89c7f0a5-7e08-470c-8c32-c4657eb79df8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005357; 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=csvwBDBtFGc48jg4jEJIdJUsqEpEZpnnkIuWC7zw3YQ=; b=bqvNY1Rp3+97atd0vJfMyGRPQbRJVrhbbEJspkM+hBJK/l9rNiqm327UbdbUsu26poYojI 6eE0EeYH/9K1ilvbI0v2ZnLSS/iTudsMNpVMv8Rp8yXGfLtepBukGQW8+mgYRu5tMNTOC/ /bvsBvfjtfgdlUfeEjMMtSLDdQSdIJo= X-MC-Unique: 4iLhtgzoOE-IdxjPXrGF9g-2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FEdWrKHzXgjyp7ZEHrbXCFH6f7gIoRdJxTJRaM5qejyIyVP5t8YLM941Ss03r005KvIpTh+w66LzNQo8+4TcfIxapaGDiFInA7duYaZxTud6TPt7AqSsaq8Lx/oBw2SY7/MSWiL3oqcEZHxY+MfIr1S3u8ziwIK4FxZwW7f/YhW4TicFf3V8h4RTZc8NnV89jE2+hKmcBsAC8d+pMXBi1ftcmD8889QrL77QN2WuW2iuo5fpZeT47XZ49P/XJKNjk24ptdlvh1LHsLyQ+FIcqls0cj0zvGazmq6HzY+gfv/ZyF7HQxcOMBB6yG3Zhwm9HrxotvovuDubrOz2VW0MXw== 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; bh=csvwBDBtFGc48jg4jEJIdJUsqEpEZpnnkIuWC7zw3YQ=; b=ZcvCV2pd5y9a99dHbgErSusWKYtrYYe1JVKdU+Fl6+9kfK/90vRoQVjEmE6q1n2811b5sAPf69SBxeBlVuYse7isclAJs956GlPonBVpu54oWs6/qOrGvzTspb3RTCrjLZUv29l2h3nNwrbGNmTQOsSRfxJtJ0kqmjKITl89pXZYdUhlG7TOB+wYPP4H9Xls4J8neNjCMOXvFPoxMmaxejYfnGmcadQxbUVmLXk9bWpYZ9CQig7KuNXy1POLCoqXJCWVuqZRm3XfZ9FAaKaki0fxxfrXcLzvJd40xyQPblcoonPQsQaNbg/468i4jNb7P3RrLy/nRP7E/sXv6GAdmw== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 3/6] xen/x86: adjust xen_set_fixmap() From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: <11fcaea2-ec17-3edd-ecdf-4cdd2d472bd0@suse.com> Date: Thu, 30 Sep 2021 14:35:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AM6PR01CA0058.eurprd01.prod.exchangelabs.com (2603:10a6:20b:e0::35) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 733cb1a5-c54a-41c4-369a-08d9840ed853 X-MS-TrafficTypeDiagnostic: VE1PR04MB6383: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5516; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: myEIyzqFlWR0QrxdEpAZVC+kMgoa8VyQRPVsJvIIB/9mrT6ZOoOJ53sMJyck12R5nMTjIuRneA7fU3mZOtVPxF/IpUAJzxRcF4QrYKkWHyaCjM+GdrxkpwYjGkemq5LTUIFLuO9mq0vXkqk0Z1NgbPukI7GjnCaGoo4EZ7lTYPidPJzS4brADk8XIix+EYobpcg4xqbWE8DjJumuPHc2CNSUjThGyr95nBBwU1BwA7GkIOLycVw3De2qFb4AKl71yLsdAm+XFe89/K7vwFR/0zM1jKmWgOdbfxToPxb2a3Zk1zkqD9so+/Jp/cXyQYiIUXeSCywNWVfjWiznDpjAZNVQ7lHxNy4VBRQCwTnfnxUC9CZHtoqHf286Tb3SG7ZQEXQ8wVETXsrjNlOEkXeD0XN4RVGDyDhUzNijQinc09b1tkut+wv7i1yJcPysW9PX4K+rCy23Tjh+HJL8lizfMDAhtndXUi+Y0deQ5niOT87aK6fGOdnZKl3YR/L/t+NVdl7VrzJFlJt1+kHRD2EVW6XfxDB7F36dw0spF24JV/wHhGkJrlNJGtd9/CyoR5piWigIndnre1js/4hdlvGRBW4fKjSOpElHtaoEdOr71/3MgOaHy9LA7sqh4N/XCVOuqigSYFG4wGHK4yOzO5Csb6De8VJGJqf0Slog9wcfHLPertff7YBdUA02Sv+udubbmCI+UVR8TVPre9slX5rNfg== 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)(4326008)(2616005)(186003)(956004)(508600001)(31686004)(66946007)(83380400001)(8936002)(86362001)(2906002)(31696002)(16576012)(316002)(38100700002)(110136005)(8676002)(36756003)(6486002)(66556008)(66476007)(54906003)(26005)(5660300002)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?PPwRTwbEPINbsS9NQlOpc1DJb3Bd?= =?utf-8?q?KSv1Ch8Ln95XPxdR1CQU4SCUTKAWs4+IFgnrBLq/OJomPpj7/I2nQd+1AAY3HmRJG?= =?utf-8?q?qKT4hmn/ndqmyZlMJ/Dtjs6vS3nCZD6TpVk8MfBhkjzlV8t0gY4psfhyjgqwrddun?= =?utf-8?q?iPk90Wv4Le/MfmWG6YqFiDf6lO8mmFrLc3w7NhS2gZiXut7G9wvW9iR8cVV2F67tU?= =?utf-8?q?b58e8ohP9xHm3SgmuGu9m2w8j568ItrccD/CQZPrebVdNLVqEE1hNU9u0uKh43hnu?= =?utf-8?q?HetrMvjLRd0mDfklvDGDHZAivHeHH5l3srqQIOnGpJS627/X10uLMoRcVGjbLrNnS?= =?utf-8?q?wZxYtHHog9yi/DCP4I1ZYZjqTvLcjKoqX1cJ1IwVTQy3pWkUuxhH5BHEvmBGL7WWb?= =?utf-8?q?ts1sfxoYAnnkvl18GwkU2iAoV09CCLSkNMIB/wjQzVB1/tmNkgqgpYY/WTuUgfxf5?= =?utf-8?q?c93D5ax14ss4bqZ/CASjM/LpI26uzEFKg6Z8/P06HwsyiV1pRaKU0t1/5dn2I67Wv?= =?utf-8?q?9v1wkEdg1TMg/GhxR/9j8VSiOcSKFSNaRw+L1WmeJZmfOf6iK13Smq7hr6yS3VJrQ?= =?utf-8?q?kvzlrmpr5gUL4WJjoRPzoQJj+5ZBMNPJziuEmayo1ykqIlkdxzKTFhq2E47ZmEvLq?= =?utf-8?q?sGsWLjgFFNpBYyGY4SZBJS8p6h0qP2t6V6WY/aRrXFTxAFvoHWfAy41cn0z34KPUK?= =?utf-8?q?Eah9VOIK0FI3NZP8NjW2dB3Uyy+VKem/P0kT1B/4Q5BXO2BPOGkBTH5po8ryvXXsS?= =?utf-8?q?+z84ZdmYtguilPJ2+Rqaaub7oPENf0fBX34POGeL1ytAzc5ftEgbfDH2VPQwGpoiC?= =?utf-8?q?UjHb8YuQZ/RCs2TdK1RSY/N7XkSJc+5/XD0R7YXGuoml59EFuzpqvn0DiF4k5PT7v?= =?utf-8?q?JJXYo98E7cyDyp8ZuglWx2K4uVyrNTxDjGU9lesBB1hpYkM+rVCqXJeGQAa5EshHR?= =?utf-8?q?XYKXdSB9dbK7Oc31SlOVBa8UTjBivsYuVlbwE2T0/7SklIPOcu6Y7uyPuWc0QbKGT?= =?utf-8?q?xlx/67kYySUKRF25cq63JqyrhGVazgjdCLsXsYPcctOj4h+fRl2mQCMHe8VwkFLfq?= =?utf-8?q?AMrR+SAXn8TTGJvLLJihxAs3xzMzxt/vvrqbY36JCSZ00XIJkVkoPfwoc6UG/6nPv?= =?utf-8?q?XVyr/IZknW5AZuJ6+Z1tdBwNxKNyZ5igvSU4FKkZ/uV17UWV0u1w+tYJmONBbv4TE?= =?utf-8?q?6h789Ruy0RJuwzejpXEG/MqOKJZiD5AnNg0qYilpLfrX8YE4XHd/jpxBwtdja4KUY?= =?utf-8?q?uj5kV+O7aAPytAvi?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 733cb1a5-c54a-41c4-369a-08d9840ed853 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:35:54.4645 (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: SgL0mzeJ4pJiRZIPT79Ewr88HsQdIU/G/WhWCllKZd+ErP5iAy3MdUnMGElgEPiueK0J3e7on0LHxLRtAnkq2w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6383 Using __native_set_fixmap() here means guaranteed trap-and-emulate instances the hypervisor has to deal with. Since the virtual address covered by the to be adjusted page table entry is easy to determine (and actually already gets obtained in a special case), simply use an available, easy to invoke hypercall instead. Signed-off-by: Jan Beulich --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -2010,6 +2010,7 @@ static unsigned char dummy_mapping[PAGE_ static void xen_set_fixmap(unsigned idx, phys_addr_t phys, pgprot_t prot) { pte_t pte; + unsigned long vaddr; phys >>= PAGE_SHIFT; @@ -2050,15 +2051,15 @@ static void xen_set_fixmap(unsigned idx, break; } - __native_set_fixmap(idx, pte); + vaddr = __fix_to_virt(idx); + if (HYPERVISOR_update_va_mapping(vaddr, pte, UVMF_INVLPG)) + BUG(); #ifdef CONFIG_X86_VSYSCALL_EMULATION /* Replicate changes to map the vsyscall page into the user pagetable vsyscall mapping. */ - if (idx == VSYSCALL_PAGE) { - unsigned long vaddr = __fix_to_virt(idx); + if (idx == VSYSCALL_PAGE) set_pte_vaddr_pud(level3_user_vsyscall, vaddr, pte); - } #endif } From patchwork Thu Sep 30 12:36:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528213 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9DF23C433F5 for ; Thu, 30 Sep 2021 12:36:34 +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 4BEB160E74 for ; Thu, 30 Sep 2021 12:36:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 4BEB160E74 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199881.354198 (Exim 4.92) (envelope-from ) id 1mVvIY-0003xK-J1; Thu, 30 Sep 2021 12:36:26 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199881.354198; Thu, 30 Sep 2021 12:36:26 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvIY-0003xD-F9; Thu, 30 Sep 2021 12:36:26 +0000 Received: by outflank-mailman (input) for mailman id 199881; Thu, 30 Sep 2021 12:36:24 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvIW-0003qN-Gm for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:36:24 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.111.102]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 04402960-21eb-11ec-bd4c-12813bfff9fa; Thu, 30 Sep 2021 12:36:22 +0000 (UTC) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02lp2053.outbound.protection.outlook.com [104.47.6.53]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-24-6eL9DEv_Pv2FjHTNjZfUMA-1; Thu, 30 Sep 2021 14:36:19 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VE1PR04MB6383.eurprd04.prod.outlook.com (2603:10a6:803:11b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:36:19 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:36:18 +0000 Received: from [10.156.60.236] (37.24.206.209) by AS8P250CA0002.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:330::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14 via Frontend Transport; Thu, 30 Sep 2021 12:36:18 +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: 04402960-21eb-11ec-bd4c-12813bfff9fa DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005381; 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=o8zK1TzXB8klvX7+Pkf65I5+DzQn9KW4HMfyUQ+KytU=; b=VKRTLO8jAajIVo5wGOmhq2mOiqO36DXcIbBucVZF1lFsuk16nm/EKLu9dy28xKnFdfhEpA goRqEtecj/e4FeXVorWtHtjX7XDcKKuwu7n1GKIFQjiRvcy9DrF+nzEwjp08VtCqeRm2ir lNS3fC7eJMcsmofeghsixzjiN8eAh64= X-MC-Unique: 6eL9DEv_Pv2FjHTNjZfUMA-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kMBiKcdZwFUlZCDUnusQJqhHEl01m6RqnYCQoiilh8RcBq/yikADO0kZd0xNg4SRVIKUfYrq3iKxYe2uIDcPYkXsF6DZ94GX96k3TiSRJF5DAWdBqeNHteF61SANsoROfAvZMzJ3kae/FwIlJArqXovkYearrU7oM6ninbUbuDN0vwNNtgQzrZAB/HOYaWGVypJMktV+Gs6kySnj9ggFTaLWU0orM1ppMs7qUG9k9H+BaQvRbOkVxB7qm9mkmeCylmCA6TdYsm4Z1NberxqPJztMOdgJ9CmbEGHzVg4Bvw+XdAIatVVtnW32e+eBo4d62Xf+16J+TIlrvn3c45fUqA== 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; bh=o8zK1TzXB8klvX7+Pkf65I5+DzQn9KW4HMfyUQ+KytU=; b=Z3p//lghpU4IxqbBK0J98DcyYeBPPdwrJ+g9NIcykIvo1f4Xl8DNMQ0WxUm7bPn9w+vSSJ67JFv9GYVNpnBRL85w1XESnDYbTgTDEaMgTuVLbXYmvLUt+jll4pO9gU537gQ9powSL35qzc+jEZ7Aa4gCM65fm6Bka/YeGTzc9IgzYm95vVidqI9pXsKe7wQzZHm22EoA1Q2UlB2dijg7eFaVw9FhcddpiRrQSRrhUk/L08HNoFOm7hh9B+AGFIeGjeVosuX0AO+WPcaRP3uYlvCQty5JhWZeBh4pqxTYt5Tym6mVr45aa6BJO5YjD5egEeno1ll6xSxkARnUTKQ3Ow== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 4/6] xen/x86: adjust handling of the L3 user vsyscall special page table From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: <1048f5b8-b726-dcc1-1216-9d5ac328ce82@suse.com> Date: Thu, 30 Sep 2021 14:36:16 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AS8P250CA0002.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:330::7) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2b717692-eea2-41fb-d7d2-08d9840ee6e7 X-MS-TrafficTypeDiagnostic: VE1PR04MB6383: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6430; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gdR4A6Abb/a+iWFzTqvPecxY4Eub29t75bTxiVjq2QZn305HQ4ddz4Bc1OOb+VFCCGL1cNjCrrFtwyUFu8RPc/a2VvspELkOFrkoFe5UHbH7s742kuTdaJkq2rIO21WFXEFMVFH6mXtLcqA6wUPm+BJTpZNqlJuJUGHnLB0r3wqOZBelOEe1ptaH461vAnjkoU7g6fj56UYk5uwye9lRJTh1MfD3DfRyrlRAyM2G37N7zKuVs1r99N3LWmqaDKc+nmyfSs0lPo/6C5WEE1eH+aHNBMIIXTZHwgT9UYpm+IPndP03GvQ77PnOgoGZ/0d26dFf2JUbTiIqzkvsgK0IUfo0sITIiOXLSautuuecisOIm3hJisPM2MjUKokGbbWSzqG6+1+Fdq2mnIr4Nzb9MH8Mf7hy1VyWqMfQ8vHzZxK1hfSseDVkTOdsehd50rLlEmHtE0BcjXdE3q5IsTqw/4LW65Aobf/dkBhcHd9HdLyQXU6WZhARRxPx64w+FPirP9NBPJ8DKwFLDaJZn8GiLTayTQemhdblCBWVFjm4zGo9LAwxpl6wMbTVkB3TNkieRUJcxECQWYmyu0uZPd1COwAurTTcqRwwjPes3uvSbJRQBmhCXN/OG5HhcEgBZ63uc1T5H90dlEE/0LLJV1dSlGgqJ7YBBlOuWm0ZWDqsxbdJKR+DeZR1cKm6wSQxZlE6TX+Na4ILH5aoalSx2sScWmmeDrf3gSpg8H4ubVDFgQHEAGUQQyo71vYynd9FrUAZ 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)(4326008)(2616005)(186003)(956004)(508600001)(31686004)(66946007)(83380400001)(8936002)(86362001)(2906002)(31696002)(16576012)(316002)(38100700002)(110136005)(8676002)(36756003)(6486002)(66556008)(66476007)(54906003)(26005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?m006oSKThzClZbdUgiyoOFCjog1V?= =?utf-8?q?dENyyf6pR2CX2m4/Xl91uMms8p4zfUwBH9mQh4Klsh/nQG2por27yKeyom0ZTUVOE?= =?utf-8?q?dnlRW4vdEPvyCO75X3LyR1lp8csgJpYRo3y91gfZQmHd4N7U4xyyBrEzFdRzx5fmn?= =?utf-8?q?NpZBIg6j9l+juI8Zd60Igh6gV6G+LUaPy6PlJEaP7uC9t1DKz10chO6sWjk1GpCuy?= =?utf-8?q?EsAkzyML+pZ2z2DdsJLBXIi+HvlC+t5k/SC3B8wqzce0VjOt1khXgTyljtPKTcL6L?= =?utf-8?q?I2N71rLVisTnWVBJjr7HaRJ7MNoqdhIVYedhs+Q0p01E+IDDe9Gr4L39JMC5e+Xbd?= =?utf-8?q?6MMrE8DwmMgWRWbxXMV8GAfQ5R9Te6WKUY+fCzSsYXAIWUQfC/hxD7joco55s3k7v?= =?utf-8?q?UJKtT8xYMUhPd/A1OjwEYvHEP6COj5FOVrVpdnBurpRJQmZ7re+I63uAYObqskDgR?= =?utf-8?q?50XQA+5lzrS16lD+GPzfMsfru5dFqnvQfu2IbKk6vgxCH9HbCzHrJhY9zGo2m58u3?= =?utf-8?q?vLaq3iJcJCdJUO76RCeCZvTJtPCxS5L/UQlXXUM+rNSdL816ycNDS3pynEBA0S8Ex?= =?utf-8?q?4+wpqDWZ1X5uHfe2snD8WomAI6OC+g5IZjmmTKP+Tmy69dL91O/fEuSm5Q5K2gBjn?= =?utf-8?q?Q6qm4iczJ4gpbOY1KBOI2X0qM0x+JeY6/8EtaCPFfZwuu4RPMTYVQKAJOBAbR8k0U?= =?utf-8?q?T2bl2WoB3ZKA8Afg9on2TgCA2RpL3QDIi3UI/M/JBJIsksBF31gbta20ZgclPU88F?= =?utf-8?q?09scv5hUxG9LTLlelp/CBngs07NRp1AANzsB02SHoDPSyWDL4CVOmY9nK3P+F5xac?= =?utf-8?q?p785LYV9tjQLfSb3D2jfwH/55itCqmnkRFKeD2m9ee8cEyXT8g18LMYVxeYdWo6Nx?= =?utf-8?q?wpIc+5FY3R34mKADx2Y2l5Wc2YkCBe7jScLkoM3O0q7Ne0V9h9ah3uHIuC9BjId6l?= =?utf-8?q?JBzN0JK89iz1fOMt/X0xWXDOPBLRpce0BBcPCOVo8xUyjhenQc0BWDH7FXps59pmy?= =?utf-8?q?pumLz9MgKni7AIR1wZcdpMZL3kW0HYubeokXfeGFpWHzRLOO0hZg/fbSIU/ZZKGwl?= =?utf-8?q?iQnx/pht8hx1YDhD9m48JWqCrKs3WhmNOAh2kHwfxekj/1ry752eHh2UvqB97jsA7?= =?utf-8?q?nacghrvQUVGbp7VYV0jlRXllDbbFYoCkajq0OrVQ8BILBAH80N8T22R0zijbzIT9X?= =?utf-8?q?Qj2CBmO6ldd2itTO+1alqE7/s9I06bjewflvxuPj5Nc9peOGsyC02fuM45TWZ2tI0?= =?utf-8?q?IDfAblxG1zFUz95G?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2b717692-eea2-41fb-d7d2-08d9840ee6e7 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:36:18.9427 (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: p/UVvcBHTex3EDann2EoFsoQf08BAYRzVOqe4nNdq8gQITWVXi39PUQVG29gmdW3u5gyJ6YEe5ipqfbkTqb8sg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6383 Marking the page tableas pinned without ever actually pinning is was probably an oversight in the first place. The main reason for the change is more subtle, though: The write of the one present entry each here and in the subsequently allocated L2 table engage a code path in the hypervisor which exists only for thought-to-be-broken guests: An mmu- update operation to a page which is neither a page table nor marked writable. The hypervisor merely assumes (or should I say "hopes") that the fact that a writable reference to the page can be obtained means it is okay to actually write to that page in response to such a hypercall. While there make all involved code and data dependent upon X86_VSYSCALL_EMULATION (some code was already). Signed-off-by: Jan Beulich --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -86,8 +86,10 @@ #include "mmu.h" #include "debugfs.h" +#ifdef CONFIG_X86_VSYSCALL_EMULATION /* l3 pud for userspace vsyscall mapping */ static pud_t level3_user_vsyscall[PTRS_PER_PUD] __page_aligned_bss; +#endif /* * Protects atomic reservation decrease/increase against concurrent increases. @@ -791,7 +793,9 @@ static void __init xen_mark_pinned(struc static void __init xen_after_bootmem(void) { static_branch_enable(&xen_struct_pages_ready); +#ifdef CONFIG_X86_VSYSCALL_EMULATION SetPagePinned(virt_to_page(level3_user_vsyscall)); +#endif xen_pgd_walk(&init_mm, xen_mark_pinned, FIXADDR_TOP); } @@ -1761,7 +1765,6 @@ void __init xen_setup_kernel_pagetable(p set_page_prot(init_top_pgt, PAGE_KERNEL_RO); set_page_prot(level3_ident_pgt, PAGE_KERNEL_RO); set_page_prot(level3_kernel_pgt, PAGE_KERNEL_RO); - set_page_prot(level3_user_vsyscall, PAGE_KERNEL_RO); set_page_prot(level2_ident_pgt, PAGE_KERNEL_RO); set_page_prot(level2_kernel_pgt, PAGE_KERNEL_RO); set_page_prot(level2_fixmap_pgt, PAGE_KERNEL_RO); @@ -1778,6 +1781,13 @@ void __init xen_setup_kernel_pagetable(p /* Unpin Xen-provided one */ pin_pagetable_pfn(MMUEXT_UNPIN_TABLE, PFN_DOWN(__pa(pgd))); +#ifdef CONFIG_X86_VSYSCALL_EMULATION + /* Pin user vsyscall L3 */ + set_page_prot(level3_user_vsyscall, PAGE_KERNEL_RO); + pin_pagetable_pfn(MMUEXT_PIN_L3_TABLE, + PFN_DOWN(__pa_symbol(level3_user_vsyscall))); +#endif + /* * At this stage there can be no user pgd, and no page structure to * attach it to, so make sure we just set kernel pgd. From patchwork Thu Sep 30 12:36:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528215 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E996BC433F5 for ; Thu, 30 Sep 2021 12:37:12 +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 9885C613A5 for ; Thu, 30 Sep 2021 12:37:12 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 9885C613A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199891.354209 (Exim 4.92) (envelope-from ) id 1mVvJ9-0004j0-Ve; Thu, 30 Sep 2021 12:37:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199891.354209; Thu, 30 Sep 2021 12:37:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvJ9-0004it-Sh; Thu, 30 Sep 2021 12:37:03 +0000 Received: by outflank-mailman (input) for mailman id 199891; Thu, 30 Sep 2021 12:37:02 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvJ8-0004hO-J1 for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:37:02 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.109.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 14e64bfa-0714-4185-8266-1e86bbc43d80; Thu, 30 Sep 2021 12:37:01 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05lp2111.outbound.protection.outlook.com [104.47.17.111]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-27-DpP6b-ieMKKti2mFjHTOAQ-1; Thu, 30 Sep 2021 14:36:59 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VE1PR04MB6383.eurprd04.prod.outlook.com (2603:10a6:803:11b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:36:58 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:36:58 +0000 Received: from [10.156.60.236] (37.24.206.209) by AS8PR04CA0006.eurprd04.prod.outlook.com (2603:10a6:20b:310::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14 via Frontend Transport; Thu, 30 Sep 2021 12:36:57 +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: 14e64bfa-0714-4185-8266-1e86bbc43d80 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005420; 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=kQLmBvAO/NkPEGuiu0F/4ldlzMcypIF4EQud5MBiHsY=; b=KPMhD+ubwGcbeJ0Z2FbrprXjSue7JAAg7cG2m0GyPJ+FF4jtAEloLuVzW74wOw1nzDRigx DrwceYg5vXeKkTYgP8kP9NtGOUyOqdn/xJ6gDJ+hp1RAwwdlQJxRzuWk/1pLLb69h/OX7d Ie6o1qBwoizJS8rH2L8wai7I7wK0/FA= X-MC-Unique: DpP6b-ieMKKti2mFjHTOAQ-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NLgF1NznO7aBcsrf6Z1TOlaQBeHNNiUvPb2gb58YMwWGMdmcyr53JQqCdpcreZ7Mjb/r45nbJqKRFxjSMVd2QOxHKosrUQFuTwT+EVoUjNVyMS0PnkPMXSesUtCjVATBVJxx7gfyithJ2fp/wuINmACD9+GToLPPAIuYsWgu+3sPgOBFlVp4bumGgND9EYYPXXHC3Omys6Gff0HXtaCoCX+SKwbru80+fbcMq3mUvkBoQn9Nej8YmFuUW14Z/B0hnY52aQZHLj6eH/boVdwg1uuUFBMr0cpLDBtUQwMyzvER+c6XOE9unB1CzuUQ/3nz4fhX/TZCmjUB2N/1dAscrQ== 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; bh=kQLmBvAO/NkPEGuiu0F/4ldlzMcypIF4EQud5MBiHsY=; b=WjwgnqVCBjNuQzXULQV5ichQfsGruTlopM3javsrTOXEu+Z9uY6ZPwGMPhlLJM5n2tqvRorzSHXGxZXHrF7Nmn25LCE5saLTdE2VldA3Ms6G2pzc8g5xc1HAQu4GnHedfbjHbzblLVVXm3e4zUrPBCsNTEoLjQhYwUTjqyGSIOnDInLJkqiUFfjSnBb1dxe8WxDbOw0iW2y77A4c/R7u8UMeAaKUG5jb66LenCx9nC0isclvQMvtEO7DU2bf0C3LkjqAQ8vaDIIBqAWjUgVLmtgu4B5JCtWGlwGSFt28vfOqvyc3vF7JkDMw8BKeyXO67qz7j/8a+sIDxs/mUnfVng== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 5/6] xen/x86: there's no highmem anymore in PV mode From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: Date: Thu, 30 Sep 2021 14:36:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AS8PR04CA0006.eurprd04.prod.outlook.com (2603:10a6:20b:310::11) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0612504c-decf-405b-a082-08d9840efe61 X-MS-TrafficTypeDiagnostic: VE1PR04MB6383: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2449; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: R4UcBi46QwQHaVjkTAZQCfIupTQMqrpyBx9n7ju4hxbxhJQkdJVISVHTlCeCjp0PFqqT18cQXi5Br8YkyrctwK6p4eIjkHXb2VeOBBLWk+DVHVtVmUNLSC5t9giu8zkNZkkWUG6JQabWTd804QPntlKBrEba+0qEI9boaajzUrwVXWM+nvk1dYGj/60hq+hhxGN8XnUgbFGEicwvyedCnP+AjMnIiHywhqSBPSfK8HcH77XBaNQrMG/scSsBW7BbTLhr54CLGpqVDPB1khY1bkLtO28R/m8iVrRanDHjeTfGHh13sanFzW/cwvE2XCh+aQM+PqyqefjUBftXJmwQM3ri9hVlwqu4KOPDmQhtspyVl1iK+VB8QuyhsIEE9o91TU43LWh39uVYFaUdFTMg008Q/obFHIqvGpgCaOsJNhZWgCr+hhJAKzx7XlnRm1L/WXQANRPXGfR0s16utEEr95IPWhGB5sxlUOTPgGZ2xBybR3gjKsJ+B1QVciSRCpBZ8Opw+mgBZCltRvCAO3DPEWNjOAhQavCdMXkCdj3mepDdjeLFmwtZB19g5H9gfzKGG9AzEu0pGUOQ2i3nKkC0l19YiQmNDhTQ1BDQtHd4nD7gUBCM5mvmVbWQMFhz6fA/UKzA0KI25SJ76/kk9CxorPwfuHBng3FI5ix6dipLk1iW/OXP8D/gABOvQOINqK48t0OY1fqCKeYPEOo1S9fyQy1/FYGrM6iI7U2aAubCwoI2hx7HxILDmXIiRqZ6dIgy 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)(4326008)(2616005)(186003)(956004)(508600001)(31686004)(66946007)(83380400001)(4744005)(8936002)(86362001)(2906002)(31696002)(16576012)(316002)(38100700002)(110136005)(8676002)(36756003)(6486002)(66556008)(66476007)(54906003)(26005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?iSHAWIPSodHOLN3gf6SipvxxjjIp?= =?utf-8?q?p8j0wQkgGbLGhNkQA5uIX70CzdMyb1Nct32ykfjo2Wd2tzumDlXhoOW1Qozsc6uJl?= =?utf-8?q?+4IoIHG3kIP2V6+rtPIjZnt6YOO0/wMXgNAKjGQOiSozDqpyfoj7q5NEwvIjVpKXO?= =?utf-8?q?PihNEhw2kelZR0hEpQ1A5ZLUs97/XBMcoMjdFG/vEs7367z96EjSS54ycst/r/Q3j?= =?utf-8?q?z/nA+dHoAdxVwf6TkdI2HNfv6FESeN6udzTLIH9gZnDb/M86pTHaGFRgiF6ShJX6h?= =?utf-8?q?CqGNJsR28DlPh8IXUwjvmcAUroBiocut2kgVpazTFF+b641ZHBaCo/wGPMb3LOPL6?= =?utf-8?q?NQI4FQcKFYV56e4aS5yoQV8T/S51sTzHGjHHZmSCnK+5361IArO/tkK4OhkodCe+Z?= =?utf-8?q?cXSCzOM+hKhhq0YH9WrY786H432itT+XSOsX3DPecCCJns5I7mm15P7e26KpF/cSU?= =?utf-8?q?uwdME5iHsPUhlbgRJRgR5F1WirDQXuKhCTL/RN5Cvd4AhGxR+I6U7SOPjPBxrYH5x?= =?utf-8?q?4sMkOmd/GBTuwtoOUYApsFZh8UZxpWdB2SO/cSkvF/4nJuF+X7w9w2zdoihaCyHvy?= =?utf-8?q?GS/XSLj6AvFWi+aDvvfjnVue9bN7sgiZ8S+LyEoOm8Si6vHt+30UjZ1iSLPjjpgoW?= =?utf-8?q?R+rkwfL/goJjqy0N9qD8kXTLHF5mKnk6Dw2uPzSO/+oq7OQTwyaJDHGWQH7NZK6TE?= =?utf-8?q?6vTyXT34ZN7EHiddYRMwg8zWxiLocGE053tSydL1XC73mwtiFhrjGNzVEnkPZXxQO?= =?utf-8?q?VPxuGZWyUv4uoF0UoKNCZHevrWrOmSBp6LKMT+EI9fOEBSZK4wh/Lx5pPvDmap+Y4?= =?utf-8?q?kj+plaT+kmpqNMNn6KweGseSa4dlROh0qfngZ8cWQPyG3421m9kIo29Yq2ZN3pdM7?= =?utf-8?q?PraIBd5oA42uKnECE+/WOhMBU9d0lX1EuTO8p3YGClqq3/BXZ9GaVB22G9WJcEI3N?= =?utf-8?q?JqwNMR+gM1+MYrR5Gx0Uex8QfBXjXF4ul/hEt0k6hYvH9jIdTm52U+QtOWc284kjJ?= =?utf-8?q?eYsod0X0R03I4ATVknqPVLHOFrzx8a2RIl9b9qldi74HwUZGrnxx//QhPnSPelAXh?= =?utf-8?q?Gw6FZSGowrzIaJ9/sXw1svBqoHJOvAkuQYhZvXIJg9M7jhOcRb5+MnMtQ+K7/lFC6?= =?utf-8?q?9kL3jZ9pvFjfEdZvtqa1VZFKWqCeIZ0uauaQLsMlqAw7tGDRWuqU7CMeDvid2bM8r?= =?utf-8?q?Wbhf9f9OtzxYLDNq4dMPStW3Rk15WngS9ySnLo37u1Jg+1OiP19zLbircV4luKpuR?= =?utf-8?q?4I3O06jn9mVVG5eH?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0612504c-decf-405b-a082-08d9840efe61 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:36:58.2824 (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: lorDMFZEw33I+PbNj/8V+X2Uh+khFHY8f/LF/MBUkcYTQgNai/Ztpy/5HDhjm0hmyow0lZj1JBun0R3ePZGdVw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB6383 Considerations for it are a leftover from when 32-bit was still supported. Signed-off-by: Jan Beulich --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@ -306,10 +306,6 @@ static void __init xen_update_mem_tables BUG(); } - /* Update kernel mapping, but not for highmem. */ - if (pfn >= PFN_UP(__pa(high_memory - 1))) - return; - if (HYPERVISOR_update_va_mapping((unsigned long)__va(pfn << PAGE_SHIFT), mfn_pte(mfn, PAGE_KERNEL), 0)) { WARN(1, "Failed to update kernel mapping for mfn=%ld pfn=%ld\n", From patchwork Thu Sep 30 12:37:19 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12528217 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 129BAC433EF for ; Thu, 30 Sep 2021 12:37:39 +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 B785C60EE3 for ; Thu, 30 Sep 2021 12:37:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org B785C60EE3 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.xenproject.org Received: from list by lists.xenproject.org with outflank-mailman.199896.354220 (Exim 4.92) (envelope-from ) id 1mVvJa-0005Q4-8B; Thu, 30 Sep 2021 12:37:30 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 199896.354220; Thu, 30 Sep 2021 12:37:30 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvJa-0005Px-5A; Thu, 30 Sep 2021 12:37:30 +0000 Received: by outflank-mailman (input) for mailman id 199896; Thu, 30 Sep 2021 12:37:28 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mVvJY-0005OJ-JQ for xen-devel@lists.xenproject.org; Thu, 30 Sep 2021 12:37:28 +0000 Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.111.102]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 1aa5581e-a0bd-4b30-9dfa-2e87ad04a3e8; Thu, 30 Sep 2021 12:37:27 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05lp2107.outbound.protection.outlook.com [104.47.17.107]) (Using TLS) by relay.mimecast.com with ESMTP id de-mta-18-xfIf_bZcPQyeHCkSQiq7nA-2; Thu, 30 Sep 2021 14:37:25 +0200 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Thu, 30 Sep 2021 12:37:22 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4566.014; Thu, 30 Sep 2021 12:37:21 +0000 Received: from [10.156.60.236] (37.24.206.209) by AS8PR04CA0044.eurprd04.prod.outlook.com (2603:10a6:20b:312::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.16 via Frontend Transport; Thu, 30 Sep 2021 12:37:21 +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: 1aa5581e-a0bd-4b30-9dfa-2e87ad04a3e8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1633005446; 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=kPPXxxwugPBH+beN9q4uizgqAq1OKQYB05wUlCmlLlM=; b=KE1jczkPjRiGYi1Af8INeMw6vNy/tRNOAmuF7RjGtwuJStzm7pFbWblctRGKbNnzGbFmHm 6+5D/2lvjvsACUAoH5cR/ca3Ns670cFhFGo4MwCdyQg3lwSzraeqD7E4FtoIF6KQfG9DVK Lr9SWQhCsvs89C7bOEGCZex+b84Hbpo= X-MC-Unique: xfIf_bZcPQyeHCkSQiq7nA-2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XilTaAxqeBZWIJGbAE5s+aGyJxwBTKSk8JJIcQrGqZ56NngxDJh9hPmPvxM+fRJQTOOB8UH7l9TvHBP2yjvJNk2u7t5ZIXVOBZZ2pgHd2OUxBbsavaHT65oINnSGheq2AgnETqceJNhs8rRDrLvf2Mwn2fwG+z8yPgwpQ0X5wvFKQ6800h8iOyqyeGAtYYPQKIKTfP8YRaq8U+JObZf6Zc87ncHz9vA/3KQPwS8BTst102uFq1izpVMFUAglboi19KA1Le00aggzRFcl4Kz2GhsUCqQ3RoeahTcOaD0p8VzszyCWvwdBYEYwT25OcSHBfoi6/AJnFOskedlbBRqHgQ== 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; bh=kPPXxxwugPBH+beN9q4uizgqAq1OKQYB05wUlCmlLlM=; b=L81yw8xq8kuaHu8deo1awIB9H4n/kFDii481Ozwug91sYMLO9KNforOxYqXeAE6KaYblcI6PkfRJkyuE0vNEbiKRemO9hHxneo51pjXTovhT0QgvlLRa3LoeEqVFyMTvLE8U0LwTwlzxbPVDsGpGfmycn48kUh1rwFCe/NG8SAZlhUocJtmcsqlJTfcuS8WQspEXM4XC2lZUIo8u27f6nEkyXYGPJwmU+p6/kqDEjKwZ0r8Z3BoblFLH0U9wXHh3Z7VCfMDJLFVg/+82qREaMopTNDrv7a8rQ3galWv6Dx1Fo5LuWX3RDraRs+KnxISelYZ3+zZEFD06EkxqCJ6VYQ== 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: lists.xenproject.org; dkim=none (message not signed) header.d=none;lists.xenproject.org; dmarc=none action=none header.from=suse.com; Subject: [PATCH 6/6] xen/x86: restrict PV Dom0 identity mapping From: Jan Beulich To: Juergen Gross , Boris Ostrovsky Cc: Stefano Stabellini , lkml , "xen-devel@lists.xenproject.org" References: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Message-ID: <038b8c02-3621-d66a-63ae-982ccf67ae88@suse.com> Date: Thu, 30 Sep 2021 14:37:19 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <022b1a5e-4121-6bae-f07c-4ad5eac12481@suse.com> Content-Language: en-US X-ClientProxiedBy: AS8PR04CA0044.eurprd04.prod.outlook.com (2603:10a6:20b:312::19) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2cfb7984-2657-4317-0ae4-08d9840f0c60 X-MS-TrafficTypeDiagnostic: VI1PR04MB5600: X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XvmdscEd9rEdQFfFcHzHE1yUzmCA78KefJFiaS7tFz7cTJRHRuJb5OVAubYJ/hJnDKcaueTs421LujF3q2Gq74K6EKMuda/8MmLMK15SeKvZ3iB+HEliVw3Vpkat8CpnlVaIWdyk8tBxSJs7E94elR/+7cS7aRfU3aJYV+fLwULbQSA471/n+h7e1H/Fq0AWl0TE/sVeGnAznw1QpzpaNU52beKmxKjL8DyTUSFpGt3U6ZaZ++2osWQekH0GlOyQ3VoPJXLiVnEPM+5E1k9uet3VlQdAY6j8zFRIM6B3FfkD+ojsMqME2UNz7+tFnjAQwfc/2BQafiOv6ElT7GUygYdOry4RH4o61ClJMhKGmCSsJI3mpsT+VMaYgxNOZvx1OwvTfH3K1CjFez0uYtKGWZQPegnhcRIB+co5wZB8Oac16+v19khbEap0d/Qi3CFgMLDotqVe5PRInBTTm2a0LxGvsgD84nD/a9igeJ9A7hjSiIPJ4+SUo4Uo1NMb/OLRohHufORSrIfFmfoPsCvx/DcEo8LAS9YbCSZX/nlBrkKnCONLsaGbmdnOWRGko1e7bfaBV/9UnPr+wsNs0Q/EPvzTFdbOtXAKIdfm4yH99c9aNpR7+25fXkiX2/JpwT2h2Pxjd5u92hxxQdMwtWRagqyiWt/0jC/YuBrtHUF89CQ5h+6NWmJ69+0oQYKrKgdDib07cB7P5+rAvc2CtRDwAyNDVfI2ThBQT8SVCYhhjaXbMBDOlMJ912X64JEspchd 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)(508600001)(2906002)(316002)(5660300002)(83380400001)(38100700002)(66556008)(66476007)(66946007)(16576012)(110136005)(54906003)(8676002)(31696002)(8936002)(31686004)(4744005)(186003)(6486002)(956004)(4326008)(2616005)(36756003)(86362001)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?3jvGSuKw3NDlawqCc0f7WvP3VV+V?= =?utf-8?q?DEZcWW8oy9PZZ8qjDtMm6cYPG+Sn8Xitsd9yha1t6Xt9rOjT9DoUBfsZKDBOEm+gW?= =?utf-8?q?YkK2mCaaxr7x4050A/YygiOccCd0ObO1UnM5sj4oiV2Rk+tywftcI/MmrrMOXxD3y?= =?utf-8?q?HyEfuQlr6geqO0rTqQCWy0r38+EytD+j8YOgV38OucTYVlQONI9PO3M/kD6XLrWw5?= =?utf-8?q?dEUdZT+Jvpkvj76A7IdPyHTG/mWF0r9KbgqfEFNoaLgBvAgYL0Baid17EICrO+unw?= =?utf-8?q?AdDG2nFnuaR7A94ZSFMfV0Q7UrXidSvppXOhdXo//Z2+FELTdCIqXRFxlp/ieC9iT?= =?utf-8?q?YvTrifTrv2PUBKcHrlg6m9/gb5Eai3x6qTzx89iiHjczoar241xKdzw1dLAw6Bhp+?= =?utf-8?q?mWQPGLp1KgpgfgsZDmf9xwdbobrbEkOHiM5datBmw+ulBrXPyPE+ylCTx4Gpar487?= =?utf-8?q?XFowC6WNhNMVI7wOW5fG/J7kJbqF1d5Pjfnov5oY1VFTi5zZjBx6yILWIu9l25u7R?= =?utf-8?q?SCMMZYTem0mBYgsnrpsbz8kgiObgyTEMDZBvfboimwpQDo/EopI14EHDrCAdHnb3m?= =?utf-8?q?vlx3HeDCgQmi3CQHzF9FPbJ+TX/6F7oSa+6yH7txX6BpGjOy6cD8M3BlsaEQ5mRod?= =?utf-8?q?ELFSA9sD+D0Zv+4VEhkUjsus+Je0Q5Ge34bqfVVf7zQekMV5I/gBkSbAz7XEQnbIR?= =?utf-8?q?1+LqYfpbc+nyq6Vzsx8j3fw2lXiXzlJYXSF8gUhjTBv3pvBbhGKh5vq7/fuCYfXfG?= =?utf-8?q?9Fr0u51DjIFqMkMd+swhwjDjzrmeaO27XFDcZaAOomooOwKPhBHSHYMIp4OnxfWNN?= =?utf-8?q?bCQDTccTuglQTqRtpB5s7EdVWzdQv0/jkZrvGeqgNymzyplseYJhQke6VQzDx++mL?= =?utf-8?q?m7sQ5SwwVLlI5523/fEjRxNnoVfAWTOYINAdz5yd4X98aH7QlVQ9ZIQrD/EUxhBWQ?= =?utf-8?q?GcB2aH2esM1VjoQoAkjpI/yw5m/re6o6KsM/I0T09k0X9sYvUewTncGg7b6d9/bdT?= =?utf-8?q?cMEYSw8LXPp+NBinMWuvDeUayxzQn9TWjABPOEcs626UlNiBVj3wmE32Arkdc0kD+?= =?utf-8?q?mqyN+HxxJ4hR3fWrj04QcuZLbEpb2H0ewGXoFFJgehvAxStrOFyIlHd3Z8frJs5Lb?= =?utf-8?q?cpwUevNFabwLLHglaILuh/xyr/LceXHe4DIxJraTn7w4ykpyNWb29MnY/Jszf8XPD?= =?utf-8?q?ayDdUjFaGrRPFwV70iPE44S8lJQ3LZUeBCvs0h2Ix193ZKV8oWsM+vckc/XhkCzli?= =?utf-8?q?11oCJHU6m/B8ieBu?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2cfb7984-2657-4317-0ae4-08d9840f0c60 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2021 12:37:21.8021 (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: N+68ucEy+pC2zMfLvWa3YBirMpv4MDFLr5fQVKEKl3arg/Yr/kg/vljVeeZ6LHuxaQ1Uv2OjsEoU6X25wHf1UQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5600 When moving away RAM pages, there having been a mapping of those is not a proper indication that instead MMIO should be mapped there. At the point in time this effectively covers the low megabyte only. Mapping of that is, however, the job of init_mem_mapping(). Comparing the two one can also spot that we've been wrongly (or at least inconsistently) using PAGE_KERNEL_IO here. Simply zap any such mappings instead. Signed-off-by: Jan Beulich --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@ -425,13 +425,13 @@ static unsigned long __init xen_set_iden } /* - * If the PFNs are currently mapped, the VA mapping also needs - * to be updated to be 1:1. + * If the PFNs are currently mapped, their VA mappings need to be + * zapped. */ for (pfn = start_pfn; pfn <= max_pfn_mapped && pfn < end_pfn; pfn++) (void)HYPERVISOR_update_va_mapping( (unsigned long)__va(pfn << PAGE_SHIFT), - mfn_pte(pfn, PAGE_KERNEL_IO), 0); + native_make_pte(0), 0); return remap_pfn; }