From nobody Wed May 8 10:12:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=2; a=rsa-sha256; t=1655985260; cv=pass; d=zohomail.com; s=zohoarc; b=caZQv/EqfGgR44Tqa6o4lysIlqKzgDp7uj3G03B7PkV9ruA+svjOWamQEp399sdjkAYJyNqazY5CcQYRDinwicUJ5gpkbRt8L/cSjO4SHB7ShAEeIuUOZ8o/lgj8f7SgnYS6ad6C6FoBbrvqaG//UFWXQXMtamUnkHsnMq0gh1M= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655985260; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=1OxswrBk4M276hwZgUxG9p4J92lXbotQZzLwSqRbrQw=; b=V4GODqo4TzybAuoC83d9mA1NZU4I46k7RIZQMmty4ROLAvrNzokUI9IWzsesC6TDsNioqvvVUWGo57QO6JMwdceFDkZMWLvrhiauY7GRHgZW/wwbhvdBLNfGwOn9xwJYygpyqi/TVikCW5YwKCSKhlwZSHhCRQX6488wvVoc9V4= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1655985260027289.24689992260824; Thu, 23 Jun 2022 04:54:20 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.354864.582197 (Exim 4.92) (envelope-from ) id 1o4LPL-0006Ee-GN; Thu, 23 Jun 2022 11:53:59 +0000 Received: by outflank-mailman (output) from mailman id 354864.582197; Thu, 23 Jun 2022 11:53:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o4LPL-0006EX-Cu; Thu, 23 Jun 2022 11:53:59 +0000 Received: by outflank-mailman (input) for mailman id 354864; Thu, 23 Jun 2022 11:53:58 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o4LPJ-0006EL-Vj for xen-devel@lists.xenproject.org; Thu, 23 Jun 2022 11:53:57 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2070.outbound.protection.outlook.com [40.107.20.70]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 29649367-f2eb-11ec-bd2d-47488cf2e6aa; Thu, 23 Jun 2022 13:53:57 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR0402MB3523.eurprd04.prod.outlook.com (2603:10a6:208:1b::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.15; Thu, 23 Jun 2022 11:53:55 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::dfa:a64a:432f:e26b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::dfa:a64a:432f:e26b%7]) with mapi id 15.20.5353.022; Thu, 23 Jun 2022 11:53:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: 29649367-f2eb-11ec-bd2d-47488cf2e6aa ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jCfSS+LhFVbqkAUPNerbQkZbB/w2U0/qDxrRFdliNEFR/kszo8fN2L8srDYbV5THeSHF9II4lpGNFuZDFsdhS6ka8qhVUehFSrNZzuTE+ZVP5SvlB9R79BRWTxpBacsdxQOeTGJXN3qmnQTqYPE1h9whCQggaMF9qk4Dyox9fdfbUs8tZII4cGYVmlTwPIfhD56qSLofG2uGUTiHC6CFv5beHR2uN0fhqydhGKocJRQnplzb2Pbg1wGqsnkjmni47ISj6t1/nkKP8/O9Oev4O36QYzDT+/BVzRQbo7LHI/jjfC4yayUaO6FbU0MbnvBkb5t0QFIDJDs0uQjJS1X/bA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1OxswrBk4M276hwZgUxG9p4J92lXbotQZzLwSqRbrQw=; b=i4VtSc0tB0S01PX+o/ytf1Jd/RxgiQiOyn26bTKYMe0HnguaZM3eF+/yzfjpx8ZyNlj/Gi3lBhffOyutt450oCgs+CtfC2FLkXgUNuN1hpXNvI6/1iVdFP6k9oX1Qo5dmAsrq+uEs5wECqRlI8ZwKoZ+FViwclyAJI1mF7NO5dQh3SjF5Tg2jdvXNi4to24/iZX0RvAcHIOlSoEEbUiWyrnUo9gCrZO0a2euqsfyKUCoVuBoVCR4MaWlDwlhtEza8j8/0uZ7IyRslgphZH8psFh9gbrxXB97p1NWz4yWiiFQkzNlLQdgu9Yz5qZHtUftUNwSYut/EMaQE/1AkSIGPw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1OxswrBk4M276hwZgUxG9p4J92lXbotQZzLwSqRbrQw=; b=M0dZi/2Jyo34wcpjhgSpqvsVJfZlKMyvy+/rYIf7gh3arU1hPtB3G+4Foc7GKG6rviAwE/C2PI49Xt8RHEYKGp1HzN2nwr7YsSAKdgkfG1vWEA/cFV4PhiwCcDr7tPChHE1MPgO3aqEB0wbCrA1GlVYwImGy1Vt4vA7RJL+5SOhnavktyclm7KXkvrNqkg9v7SdVACoUk6Jt4Pp4sG9InZC/+Vl8QQ9kk2wKZkDVMvj67mzgBGcPJY2PxOcOMNIi2iH+qMQCWiZbco+lqJLyHnIC+rriZcJ9DP/6V+H3YEBNSVqKEBxdlaqFre3iMs6uAJEaiOF4XqfsTuJKeIE1dg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8d5df1f4-74ca-27cc-99f0-7e7a82050de1@suse.com> Date: Thu, 23 Jun 2022 13:53:54 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Subject: [PATCH v2 1/2] x86/p2m: make p2m_get_page_from_gfn() handle grant case correctly Content-Language: en-US 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: <5d6c927e-7d7c-5754-e7eb-65d1e70f6222@suse.com> In-Reply-To: <5d6c927e-7d7c-5754-e7eb-65d1e70f6222@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AS9PR06CA0485.eurprd06.prod.outlook.com (2603:10a6:20b:49b::9) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 66850d2c-4dc5-489d-a561-08da550f0ccc X-MS-TrafficTypeDiagnostic: AM0PR0402MB3523:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: LYUjyYv3ny/fnpTKu7GHOqPVlcwTPUXoqu5sE1mNxJjiW5008YnEroANnYgWE2EaeOJ+aBj8cnwFkTSUX1O9T8t/mZZnjCNCBIs5XqJ6ht9/GClJUg8j24sjz9/dJcEzxcW5XQ6z2w3dXrMGZYXgamaE8vtbXIGgqx3+cd7KH2vK5IIFAebdIi7GJ2IIYT9w2LJrj0eW9qM8GXvQzf8EOgcFSsKJBTv02VA+23vn2+wJPweCG4UZqTKIiVpi9s+tfUORD3f7fXbYEQqfcEBnPtxVFQ/7yjRu7jC6/CxreViPqFhfYMqh6uIighq4k3pfHFOSO1kTkHreUbdzrye4w+LgG+AqpXakWk/jbJhqqPsJaU/7pvyXGnDPwnTet1uoJBl/jtrecKgF29FKYILqW5XxJ4+lTDGg2tcFo8jf2jP6OckmVD0zrLCf1V/sElC1l8ybn2+0KY4p4SwwCvZIXl8NOA3gB7OvdrQ1nX0pm3N7rFiGbJL7G9y7RDApRs6GQNVg0ug4ccP24BlSOX3X0dGxvFBRR76xuPiVeut4WNcCd6Y5DWilSRmgMyQk+pj1/d4xsS3c47pPeJxdIgBHNfDHru0UWYwyzMdvglhok+oERyMAiQq0XGC+mUCMGRFG6ZikNUxmKT3MoWNl8ddGcUldcOmjYEzIINJmqlm6ta0SBkW7Tq8BPSngD+P9fcTKSQsp/uPQUyX9W9j2qKoK+BF8yPdJORXSAzINlW+l+24qi0L1L9AHtpO3lZTLl5yBiZBSWg5kijHux2kInMhezfCnkNlFOaOOiD2S1NdmKFs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(346002)(376002)(136003)(39860400002)(396003)(366004)(83380400001)(186003)(2616005)(4744005)(5660300002)(38100700002)(8936002)(4326008)(66556008)(8676002)(6486002)(66946007)(41300700001)(2906002)(478600001)(6916009)(6512007)(54906003)(26005)(6506007)(31686004)(66476007)(316002)(36756003)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ejg5N015bTk4L2dQL1FUZW4wZGlUdENOb1dqVkRvRWJaclpUdHU3SExVWCtD?= =?utf-8?B?L01oMU9BSlYrYnhnM3NhRFpnd21rKzlaaVR0WFlMV01iYUlpbzE0U1VML29q?= =?utf-8?B?YlVWcWgrWjdGUG9yVzlmYzEyMUVJWDFLZ25WRUMxcHdlQjR0c3hSMnpQK1do?= =?utf-8?B?MUYzOWgvZUwvN2xOR0ExdDk1VExqYVpDT1lDSzNSRS92dXVLUDIxSDZiZkpk?= =?utf-8?B?TE5reHpFNVZTSGxUaFFTQ1MxYTEyS1ZiSlgxRE1xbkVNSXdMVTRXbm1rSE1v?= =?utf-8?B?dE9Jd3QzREluTVpGQ2dIQXZFOFFaSnNzQ2x1NzE1R3BKVmFJVXF6VWlpenQx?= =?utf-8?B?UmhsenZjdzRyeEludlo3d2h4V1NnT1RNTUhlQkN5K2s5TkQrbVpRdHduSDR3?= =?utf-8?B?WmN4SXJsZXU0UkhqMUhoczU5alpON0tBNmtvaWszZ0Ixc2NjN3FUdVdtMURh?= =?utf-8?B?aWxBZHNGZlhQVEhWS0ltODY2QVArT1ZSUEdLUEdqYkZPZThhSVh2aFdGdXZM?= =?utf-8?B?TmdpenMwS1JmbzBpT3puRStjejRVSDZIOU4vVEh2V3AwcENTTUlKelpHSmtF?= =?utf-8?B?WE5zQXJReVdqaTgvS09VRnlkanJRZ3ZsYmIzZjBFVlEzaXRSVGhHZzU2KzR6?= =?utf-8?B?VlJ3MWJEYUU3Zkc5TjlBUjBabi9OTlNnZ0g0Mld2YTRReC9RNlVwTDk4R1I2?= =?utf-8?B?YUluc05Jd1hsY082ejhDQnhzWEVpVUtaK0FGL3V0TWl4NFBES3lBKzBDV0pj?= =?utf-8?B?cnd6Um93UVY1RDVFemlWdlNoTTV2bnNhNC8wSk1jRjVoRlQ3VERVeUxzcjZG?= =?utf-8?B?cjRlSCtERW9tc1JoQytOQTdUazdjRllzZUV5ZlY4WHcyZ0FlSUFMUEVUVlR0?= =?utf-8?B?RWdhbTQrZitiakZtNzVSLzRKNHgvcVIxTVVUbDYwSzdBMUtiQUJ0Vnh6RzJL?= =?utf-8?B?OHdHSEpoeWFGVzdKUy9ISDk0REtTRHpKbWI3MlZJajBPYnVNcmRPTEFMZVJ3?= =?utf-8?B?a0FJbGdRWEwzV2NBblU4TkNsb1poUFJEb25SK3BueEVRc1ByM3BUQnIxT2Uy?= =?utf-8?B?c2FNWFhGcnZyWE5UNTR1OUhRR3ZDUXJMTlZtN3k0TUdSVVNsZHczK0V1NlRj?= =?utf-8?B?N1JyTE4rYVEyU2VBMUNmd2ZGaXVLdkdCU0s5WEI2L1F1VHlaMVQ2a1l5VU4z?= =?utf-8?B?amxCbjhnYkM4d3dUMlJKRUZBRW9JTDhMbVB5OHpOUEFwUGZDMnhYYWE0eTNp?= =?utf-8?B?YTJjbUJMUmJNTlNmc2pUbkFNeVVPRGJYalZxN2k1K2kvVW1xY3o5aHFpSzVh?= =?utf-8?B?N0JONEtwNlBtN01OWGdHUDdXeDJVdjFOZkMyek5kNEt3NVBMS1hFbldoeWlT?= =?utf-8?B?aFNOMHpkUktPUDdOUitNY2ZRa0syeXdMU09vNW83T1VHZnFtQXkvTG9ZdTVz?= =?utf-8?B?cjcwVSs2cTBocFgrMjF2SzRGNkEwUGEybXg5OGQySjRhODRGemlDZjdXc3VD?= =?utf-8?B?Um8xeVlEOGJreEJtazF0cFlzdEtJTlVoa2pUZUxIeE13eG1zOUEvMU1XTlRJ?= =?utf-8?B?SDN0ZEhLVTgweERDYWNPZWRmaWt6d0FIWFRWU3grMnVNdkFYWWxOK0hwUEpB?= =?utf-8?B?bSsvYnNRTHRCRU1wSFlrQ2tiRER4OGwwc09KOStyZDM0UFNvMHBaNmtOcnBm?= =?utf-8?B?QmJkaEpTZTg1SFRLNEFDWUxYcEh4cmphNmJJVVNMWXA1bjRIVnUvM3N4ckFJ?= =?utf-8?B?bEQ2S3FialFMWXVuY3FjSnIwK1Y1d0lFSUM2T2tVd2ljTFVBV29YWVNUdys5?= =?utf-8?B?b2NwclN6Y1VoOFN4VEs2L0h2OTRCK0x0dko2dXNhN0kxTFd2d0pIT0V1WEdS?= =?utf-8?B?TFZKWHJXS0l1S3VwL241dHJaaFI1cDBiYVlTK3E1YkFBa1Z3M1BvNkNhM2g5?= =?utf-8?B?VlljRlBuMzZJRG9IV3dEbzBkZndKWldGZHpjNFVJdTRsL1U3bGtKT1ZRV05l?= =?utf-8?B?NUlpVlU2THdaOFRhTjI2czhPV3E4Z3lKY0FYbmFzbm1lUkFEWlVlWFpyZTVr?= =?utf-8?B?bElIL21ZdDBRTTQ4RjVnMWlrcE1XbnZLbTJCM0lTMndUa1FuM1h6c2lzQUNi?= =?utf-8?Q?4lLfD2jEvA7sLgoriMLoI13+4?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 66850d2c-4dc5-489d-a561-08da550f0ccc X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2022 11:53:55.5517 (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: 5aHkPNK36qpXPqLD2/IjVr+yRyzz27gjoFmULnbP3d5noA31iD17vrbtcSydhv9renqEM+mBiSLvQzErU5XvPg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3523 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1655985262247100001 Content-Type: text/plain; charset="utf-8" Grant P2M entries, which are covered by p2m_is_any_ram(), wouldn't pass the get_page() unless the grant was a local one. These need to take the same path as foreign entries. Just the assertion there is not valid for local grants, and hence it triggering needs to be avoided. Signed-off-by: Jan Beulich --- Using | instead of || helps the compiler fold the two p2m_is_*(). --- v2: The shared case was fine; limit to grant adjustment. --- a/xen/arch/x86/mm/p2m.c +++ b/xen/arch/x86/mm/p2m.c @@ -357,11 +357,11 @@ struct page_info *p2m_get_page_from_gfn( && !((q & P2M_UNSHARE) && p2m_is_shared(*t)) ) { page =3D mfn_to_page(mfn); - if ( unlikely(p2m_is_foreign(*t)) ) + if ( unlikely(p2m_is_foreign(*t) | p2m_is_grant(*t)) ) { struct domain *fdom =3D page_get_owner_and_reference(page); =20 - ASSERT(fdom !=3D p2m->domain); + ASSERT(!p2m_is_foreign(*t) || fdom !=3D p2m->domain); if ( fdom =3D=3D NULL ) page =3D NULL; } From nobody Wed May 8 10:12:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=2; a=rsa-sha256; t=1655985308; cv=pass; d=zohomail.com; s=zohoarc; b=aGpQjk63uicueEqo2CzA5mZ8orCCm43b5KWNbg1Ce3Gh0fiU1KDvbeDhtd8EojNy3KW1ALSRMG3t5d8TcaFkcqCRx+hi8WJYl5leE8o7g5CnTTCvrYoWbs6zoyXdctnEWwY6KvB3omXCb7RNYwAjIqJ8BXQoTfIYBwdkoUI0dno= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1655985308; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=EeosBR+ZdmfwY/nfD62Mb7pRTRQW2IaAj5iLTpTX/vA=; b=EPxrUh/JNbIYBrYiObqfdYF5jU5U43Uovtbcaufwy6PW1C0UTYmy+8fXeA5Jvle/BL7ddOvIyVVeKKyGItGzlp1F3xTQA2qo/FLGAxLUeEhzbPY7LzlcUxUpkYmwC3g1s16m5i00DytA6F3acit5V+JtUmeju7g8GfYPMnJcDLg= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1655985308059545.0646648151067; Thu, 23 Jun 2022 04:55:08 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.354869.582208 (Exim 4.92) (envelope-from ) id 1o4LQ6-0006my-Og; Thu, 23 Jun 2022 11:54:46 +0000 Received: by outflank-mailman (output) from mailman id 354869.582208; Thu, 23 Jun 2022 11:54:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o4LQ6-0006mr-Lf; Thu, 23 Jun 2022 11:54:46 +0000 Received: by outflank-mailman (input) for mailman id 354869; Thu, 23 Jun 2022 11:54:45 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1o4LQ4-0006eP-WD for xen-devel@lists.xenproject.org; Thu, 23 Jun 2022 11:54:45 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60070.outbound.protection.outlook.com [40.107.6.70]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 43f2ea9e-f2eb-11ec-b725-ed86ccbb4733; Thu, 23 Jun 2022 13:54:41 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AM0PR04MB5745.eurprd04.prod.outlook.com (2603:10a6:208:128::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.16; Thu, 23 Jun 2022 11:54:42 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::dfa:a64a:432f:e26b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::dfa:a64a:432f:e26b%7]) with mapi id 15.20.5353.022; Thu, 23 Jun 2022 11:54:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: 43f2ea9e-f2eb-11ec-b725-ed86ccbb4733 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IP/gR4hYFxFpZHle6lqQhWL7J1F+sYNenPVcA6BxqVHDERLEVXjPcXV8lrYxD8UcQ8iKV8da/25UlSjI0D+dujpXcGGBbMfaMQ1ekUq0IRANDCr/6fgZGBFFCBnCsdM2x+IEuZ3i6Ug6xentHTFrwzbl/DfFS9A4cnotzF4HqpG355R073WqbYgtFrujCruKVX599XVHSleSeRHpgSKMSJxMRDwSqvOEN1owY6KeBE0g7jdvvd8yanNFeX4KCxk2KqpEUZV+ruZ/zG2sDimk1XXXC05tIokaeFk9JitVShU6QsmGb1VopEEBEVkoe07nM4udg+bfp+Mje8svjLNqGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EeosBR+ZdmfwY/nfD62Mb7pRTRQW2IaAj5iLTpTX/vA=; b=l8npNh/iDGQw/zmKncpJPm0p4JkNvzqBrDMinlpK1n3zlWrDS8Hk5D5kmmNxoJRSUaoZglD4A532uDjbC0/Ab2bsKwmiaAoAQ6Pj9gxIQsy0O4cPRvsFEJs1w7yzAvroDUPYVE8Pqv2YkF3ZQaYbJvEjl7S6DG6fMwo1pzVLwA56IeEmJblhtAwOLijzGpfIKAqxsuCz6nv925sYva9qestPebxfAtxeGbdScpKctjNW/xQpZNwOTyzbea3jWVnvVeAnsu170ron2u2m8NMTh7tGBLvWOTvbcgbYUAz8sVrtxnbvTiPfwC+k425m6NzjIe+4AvpfDWtyrD3cByKpBQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EeosBR+ZdmfwY/nfD62Mb7pRTRQW2IaAj5iLTpTX/vA=; b=BOxkQ2RFthcC5eFJKkap7Uw9FDuHaLUEDi43SHc/Aecj52XySzM+MQb9V8rPsVknyMavZvBcuUdoWg2u5M6qzptpLxJdGuPNtXK1XglgZVVcCDTdz1+FMyoAL2ZCzBupON4ebvHPYjDpcciBuW62MdsV0nnA/A4c2ZZ0+DH3u4uoJyvbfireWPYhrR8+MuBJaHuTMoB1LlVzP1cLoWGYCyD3HW3v75X4CacSKSSUNVSXZy0jLVNFbkrT+AkWmlUOPGy1S5S3w57wGJlVMLnIiqx/LfG+2Rfscv29ypvD1O6meQhNUuHn+zW2IqZ6M0XU0NCBqZlEJjYRR1eW60pmJA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <7cce89f4-962e-bfbe-7d30-18fea7515bed@suse.com> Date: Thu, 23 Jun 2022 13:54:40 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Subject: [PATCH v2 2/2] x86/p2m: aid the compiler in folding p2m_is_...() Content-Language: en-US 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: <5d6c927e-7d7c-5754-e7eb-65d1e70f6222@suse.com> In-Reply-To: <5d6c927e-7d7c-5754-e7eb-65d1e70f6222@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM6P191CA0044.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:7f::21) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 330e4c1d-2167-4b8d-b2fa-08da550f284c X-MS-TrafficTypeDiagnostic: AM0PR04MB5745:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3+siftVLU5orHUblw7shROGyX64oBpiMclCkuC9ni4h/A3b1j6M/PC15Uw3Pu2HNnZ5ntQr45/P+LKsdXu0uuw3awvHi2KFEzkve/FtovJhXpS9aDUUucNzH/aIMG7GF2otFIICs7RLdL2Olvp62VDPhuh9XqvrYPo45PuP32lERveQu7wiC9RPbTrkId8AvwNDwGGZiKnI99zn+xdknLwnFU8fX7eM2oVCOdAjKdCHcjeJpHTCCTp3RfypX0Lg8SF0OkDutTVIcpceVAs2VQfmqZgOCwT1X7QMX9NbTO+w2CVnt/Y3pMRcOvCwHidOtf/3GrBxFYcKxJCd54A5nmb0HeUWwlHMgVB3ejR7U+vkFSgqBvc2LafOhMZLYTFPEEoj4R0TQAp+VhfZIEqr+HAs7JMf7ObAAXN2Dg+KiVKNR0DINcOebgJ+/cCvVkn1F3HTTC+ztT/b3MtFHDLBDa5HzlbxTsUeQDay05d1+vXJKfiPvhzUXY/iqIMyn3yAxLcIh9gnPqw7+KqJwpDcXndTyvIWOb5H0YxLVbHDMxr4LzAfg+it1K1YoOGT9eSLXGGJIysdd5UIsOIwm4KD1/4hTF+/ghtYcBGGX1lzkg5HShcZFfJMH2MHElVZ0JFZMBswKSlj6MZ+NHvKpubguhhsIcpkBP0WN7O4Mp9fKHTtbmbdOrc8rMYj0Cwg9LoPW7Oz9aHIyKvQLfroVNCbIaplGldb+91GN5NjzQE1rKF3bHI8Nb8/hsGgOGcP7Zs8z1vBEETSkFO2N3JT2QMslTVuUNEZLRNGB2dUwM7qauOg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(136003)(346002)(366004)(396003)(376002)(39860400002)(41300700001)(2906002)(6506007)(478600001)(8676002)(66476007)(4326008)(66556008)(6916009)(316002)(31696002)(31686004)(36756003)(86362001)(26005)(66946007)(6512007)(6486002)(54906003)(186003)(2616005)(83380400001)(38100700002)(5660300002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q0xHLzBoUHlxUXZqMVR4a1JHMmFOTXlOa1JHRzlsK09iQXJ2MTNKMm85bGxR?= =?utf-8?B?RFZkekVOQ1dvb2hzNjdRWUdUbTlwaFg0dVowWStNbElOQ1R4RE1ONVZUTDFY?= =?utf-8?B?aFNnL2gxd3BNTGQyVVAyNnFQbldPYW5DUGxaQ20raU9oblJWSHo1NkRaTzky?= =?utf-8?B?aVcxR1k4Y3FaajJJbG9HdzVEaFhQdU9taXRWc0VGUGoya0tjVnR2T3Z2UjFF?= =?utf-8?B?Y2VuczJVMjVYMk01bStHNzlIOVl2MnFkZmxNRUo0RnVBYVVJYlpLcksweUxO?= =?utf-8?B?TUFRMUJuY0U1ZlpLc256eTJEdkovN3hJYStYakZsUEFYcmlITkVtWGFaOUpm?= =?utf-8?B?d3g0ZFMwYi9UYzNNR1Fzdll2M0hyVXIxaHVKU0p0QjRXd0VMNzFETVBiM0Vs?= =?utf-8?B?L0ZJOEFRV3pTbjluak9SUGRxTFU2YzdkOW5DMVhvcUhaTW9RVjVRd0JSR0ls?= =?utf-8?B?WXIwRUhvVzk2SW5LbnROTlYybmxMakdWdHVZdU8xMk9NVFdFS21WREZYSDlq?= =?utf-8?B?RmdFNEJGR1dKN29JZnVvYzdDRW9yNWZvVElTOC82OUhDQWl6OWFhK2g1YllO?= =?utf-8?B?L3E3TndOZVBUSmY4aTNHVDlvWVJGRXdVa0VDdVJoUXhydHBiNkNHK05KNklK?= =?utf-8?B?ZmVnd2JGK3FSMGFuR2pPYWtmS0Vma25pbmVKcEJ5TzRMOFNMZS8zdmdZU0d6?= =?utf-8?B?NjJFbGxNNjlaM0d5REE4cGY3anFtQW5sTWlYbWt0akJxM0tZRkVJbDRQdlQy?= =?utf-8?B?dTF2cTFId2JFc29vVTdqcTI5NmlKcFpyU1o5N0FuemdjWk9ubzZQU3RXeDVJ?= =?utf-8?B?cjBBOFArMEVGYkdpZEw0STZlQldaSUZPU1grbXVocnhUbXFUeGx4RXd5Y3Nh?= =?utf-8?B?RTdVNXZta0pKbUJydkdWY3dQZk5IeEpMdkt3NHQzRXhqcktKQVVDOUQzdnRQ?= =?utf-8?B?MkpvdlRSWlh2VzlCY0RieC90dDNkaEh3NndhYk1DRW5WMjZzQ0NMVjVFL2s5?= =?utf-8?B?cjJzQy9UMDFualIxTDd5czZ3NTUwMVNwU2lUNS9UYlBtbCs0elgwd3RTNVFK?= =?utf-8?B?VG9Rano1aVRoSFI3WDB4cFJ5UldmWHhFaXVqMGxvQWVKbUpVbkh5cmZ1RVJK?= =?utf-8?B?d3QzcjMxbGNWbkxFVElTdDZFYjZxS2VhbHRiUVdENGpwa2NwZ0I1aWVqanAy?= =?utf-8?B?dFMweWxtSEM3UnpsU0EzRDE0OVowdEhEWGRHVVJ2Umt6QUtuMUxUdFJha1pO?= =?utf-8?B?UmlualV2QlEvWU0wN3V6dDVveDFjckI5enkvYWtSTVZmZTBRT2N1d0dpNTlX?= =?utf-8?B?c29COHJaYXpSbTdxb3dyTlpIL3Y2aHArSWQyVjhmU3F5dnRSMU9ucngxTzFo?= =?utf-8?B?bFV2V1F2Z2JhWmt3NUc0RXdZQlROTW93QlM4bXhDNkpsV3k1d1RXZytIRTRn?= =?utf-8?B?eS9LQlVwemQ3RzF3WmhwT3JKVSs5ME9iWi9xUlhQSXdZQ1ZiRVlyRGl3aGlk?= =?utf-8?B?eEtUOWdmUVdkMnZBZzlBVHRrMDBxTmlKaTFRQkVBQ2h2ek9WMEd2VGdDbVBs?= =?utf-8?B?UHFaN3dtZm90WmhUKzh6NytFVHcya08zY0ZLTDJSOTRBU0E3RGIyUzlTdU1p?= =?utf-8?B?ZEU2L05ld1lYdEFTU050Y1hLMEdRSEFQMDc2ckZrbzhWTW1saVI5dDY4eS95?= =?utf-8?B?cGxCaTRqTCtPb3R4V29oTWZmd0Mxa1JEMnBZUGhXSFM4UzlsMTc1bmZGcW9Y?= =?utf-8?B?VFh4QVE1Y0xZNDE1L3ViUklnbFNLM2lyUmVYZ2toaGhWTmJTOUtNWFo0d3px?= =?utf-8?B?L2gweGNtNHU5cUFLcllzTnJDbUp0b3NoV3VpK0ZtMjlLeGZwRGVCTy9HRDdR?= =?utf-8?B?SEJvQnAySHVmYzlBUHhXR0FMMkVxazAzZVFJZFdDa291YnZUMHpEMk55R09B?= =?utf-8?B?Z1FObytzZXNhVTNtakE2VWZRZjJ2L2xqdGgvTjJHWWtEblNMbU5NRGFVMFVQ?= =?utf-8?B?c2pxZ2dIMWtOd0ZFelcrUjlMUGJTRytSTCtWQlpneHBHN21NaWVpZE1NUE9w?= =?utf-8?B?bEY2WXZXUG5za00vd3FiZ0dZcmtsUHd1L3ZPWGFkdFM1ZEt3WDYwRU83L1dD?= =?utf-8?Q?DbzwfVAT2RQcBmTkXGd71livS?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 330e4c1d-2167-4b8d-b2fa-08da550f284c X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2022 11:54:41.9550 (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: kkhouZqDa5AEn8I4fHdebKOFS6Tk6ikTXBmdXmZ9pr/YBLdHkO5647YVaQzvlZIC1SZC8JYXqOYOuj69KSyM8A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB5745 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1655985308620100001 Content-Type: text/plain; charset="utf-8" By using | instead of || or (in the negated form) && chances increase for the compiler to recognize that both predicates can actually be folded into an expression requiring just a single branch (via OR-ing together the respective P2M_*_TYPES constants). Signed-off-by: Jan Beulich --- RFC: The 3-way checks look to be a general problem for gcc, but even in some 2-way cases it doesn't manage to fold the expressions. Hence it's worth considering to go farther with this transformation, as long as the idea isn't disliked in general. --- v2: Re-base over change to earlier patch. --- a/xen/arch/x86/mm/p2m.c +++ b/xen/arch/x86/mm/p2m.c @@ -379,7 +379,7 @@ struct page_info *p2m_get_page_from_gfn( return page; =20 /* Error path: not a suitable GFN at all */ - if ( !p2m_is_ram(*t) && !p2m_is_paging(*t) && !p2m_is_pod(*t) && + if ( !(p2m_is_ram(*t) | p2m_is_paging(*t) | p2m_is_pod(*t)) && !mem_sharing_is_fork(p2m->domain) ) return NULL; } @@ -568,7 +568,7 @@ p2m_remove_entry(struct p2m_domain *p2m, for ( i =3D 0; i < (1UL << page_order); ++i ) { p2m->get_entry(p2m, gfn_add(gfn, i), &t, &a, 0, NULL, NULL); - if ( !p2m_is_hole(t) && !p2m_is_special(t) && !p2m_is_shared(t) ) + if ( !(p2m_is_hole(t) | p2m_is_special(t) | p2m_is_shared(t)) ) { set_gpfn_from_mfn(mfn_x(mfn) + i, gfn_x(gfn) + i); paging_mark_pfn_dirty(p2m->domain, _pfn(gfn_x(gfn) + i));