From patchwork Tue Nov 23 13:39:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12634199 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 1D923C433EF for ; Tue, 23 Nov 2021 13:40:04 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.229605.397048 (Exim 4.92) (envelope-from ) id 1mpW1Q-0006Wj-Vr; Tue, 23 Nov 2021 13:39:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 229605.397048; Tue, 23 Nov 2021 13:39:44 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mpW1Q-0006Wc-RD; Tue, 23 Nov 2021 13:39:44 +0000 Received: by outflank-mailman (input) for mailman id 229605; Tue, 23 Nov 2021 13:39:43 +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 1mpW1O-0005zm-Tu for xen-devel@lists.xenproject.org; Tue, 23 Nov 2021 13:39:43 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id cfeb60e2-4c62-11ec-9787-a32c541c8605; Tue, 23 Nov 2021 14:39:42 +0100 (CET) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02lp2057.outbound.protection.outlook.com [104.47.6.57]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-37-q3U3v-FHOwame6kRf4RtIA-1; Tue, 23 Nov 2021 14:39:40 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB5325.eurprd04.prod.outlook.com (2603:10a6:803:60::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.22; Tue, 23 Nov 2021 13:39:39 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898%3]) with mapi id 15.20.4713.026; Tue, 23 Nov 2021 13:39:39 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM7PR03CA0028.eurprd03.prod.outlook.com (2603:10a6:20b:130::38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19 via Frontend Transport; Tue, 23 Nov 2021 13:39:39 +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: cfeb60e2-4c62-11ec-9787-a32c541c8605 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1637674781; 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=kTVWcpgaN5RHhZXfVu5ub8/JYsiP0odQFTntwSRApa0=; b=CyebUsNnAxyqypaB3P+Q8DfK2Jf1OrGLSjcV/5iStJD99epD8dHXAOfzAYa6qv5TOd8lvS Ksdaio6NO/5XmsethlD/kmedL3xppZeUcBYZggdo01PbIqmk0RQz3WsfrLmgX/8Q6hkW2O EQnIEF6SkdBh00q1ANsq49kdUYtco5k= X-MC-Unique: q3U3v-FHOwame6kRf4RtIA-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B8j9p7I8Wx84jFOj2U8bcWWNLUrr6LbvIXfypckMNEFZ78qZ665pHshKVYxAjRHOv3gDqbxRXyFQzgPf0QEkhFGPHhXvKb4KsQ6JxNxVZUGJ6bzH3n49QJwbWI8UCSnyRyG9WNgbeEtDajYsTwi5MumdqSBxvz3/PAXV4cmmQfIaPKeSf3FoA1UGWEOrlXgsIySwc/A3Xwc4l3ztKW7BcSdDLqih6+Gu7lI8oXNTj0KwXEGG1TXAzXeoOKvc58CzotFOGgb3AXUZHYM8mgTyIJP3YLVEPtbBl2X7WNQEFaM4iOCjPl7xOkUjFj5YqJPP63uhvKu8o1fhQM0KttnK3A== 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=kTVWcpgaN5RHhZXfVu5ub8/JYsiP0odQFTntwSRApa0=; b=IH2cVGt8Tg6wVdbEgiHhvCcoRCIj5CWZXMUHKO88cXXx96vTEiyAFaQI4p5iv6naNNOM66uALAYz+i9YWQgdZzGFvzCNPiW9rcQEb75Eby0iK4VZ8IGzYKrQjwYmfDv59uOqU5k0Qig1HXRxbC43wrnx2ttY8n54dHPUtXYwR+wzMCKM7sNYZK2mjnsmTrzfekdrvheJqVyWaJNNnJnq8gqZol5aIfSj8ejwSgExEYeisWy2cqrMMuPuiAdOv3rel5OheVfLaugTAqe2gvb5EYHkM57YzqCGO/HDmzLjbsnHh93Y2FPpEmaW0XZo8pmvaZNRMaPt0HSxQ57AGC4ZbA== 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: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <4e801190-ad7e-32da-da87-985e1b6a76bd@suse.com> Date: Tue, 23 Nov 2021 14:39:38 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 Subject: [PATCH 1/3] VT-d: prune SAGAW recognition Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Kevin Tian References: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> In-Reply-To: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> X-ClientProxiedBy: AM7PR03CA0028.eurprd03.prod.outlook.com (2603:10a6:20b:130::38) 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: 40a898b2-9ed7-432e-4bb8-08d9ae86b2c0 X-MS-TrafficTypeDiagnostic: VI1PR04MB5325: 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: qYlONdBEQGCbDEHbWLxKS9q0SbDY3xIIzOCwuinob+PlpJ/FNGIbj3RcquBdgvEnbbjeVFeqPiBMANTQxpzkKVGhIQ/rOfEcHR3n/Hh16tmpMAzD8KF+qnspIsy9avSiICaqI4z/AzoH4DWnzFasXECaxzOJTsX50hgsjmhTgsV8Eq6ap3GENgTWAUsMknRa3MXWzwAl3seGeIk9z3LBhDSl6BuVfZBJonBbjgEFxW/DQ/gckIFKNHa4ERnRx84NiMtR5K1NDnAkgHYtROEvNEDsgRqr+wjfqCM7A1q8sH7FhuFOKj3r8mpMneaBz+yKfJk9UdI7hds+9WFhnPuDTYrSg0amGcn8FqH9a6wHIrZHgCbBPAN+WNOCv5lVUYbD+3fGS3mvJm3LCpS+8ThtaJ0dQZWhcuvH+WYiJN5aS3ZdVnUaWWGScQMnf6C7Xod75UR1yWGhQQM4ZIMEEscj6knh8vWyeiUZcmJDXhmbHTjl1ajGb8dzS/ShCWJRmq1BDtiHaNhglPFacOzS3VNXRtn43/o/o+m3QihOJsIMvthngX3ytjJxIlrFmzzjZMxsjwE4lpkJxSEyY3/XTar0QIOHhRvnnnpwGw/+ZVYTSdaHaC5p3NtDsRpILApHBrp0sWezkZJmRkRh/EYU1rDmuqCxXOiS+9Mto9EnBnTfcfFWqWCWNQUC53MMuuim37aaKVW/vVHnBZlb8V5Pvg9UMEMM8t4jf4UKhZbUQabcLBk= 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)(956004)(2616005)(66476007)(4326008)(2906002)(6916009)(36756003)(316002)(66946007)(6486002)(186003)(16576012)(31696002)(5660300002)(508600001)(8936002)(38100700002)(26005)(8676002)(66556008)(31686004)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?ilkAZv0vZ+4q0tZ+AItUnDr8mJxO?= =?utf-8?q?rScZEbjciyfAhwJ+L7xv1x2OEqSDnWu96cJAYPGmElHVWlxntLdGL/B7tSdK9VMiT?= =?utf-8?q?bNtcM4lY5Svz9dqL4Ppb/byyJ22ITbG7t62TOkNADihU0fdlQ+bARjEbINOZU07a9?= =?utf-8?q?Fcu47ekoXeAz9Q6PEhtZRYY/0fT60OsvfXBimdE0Ssp6qNkwwryJY6uuplUZYk/Ux?= =?utf-8?q?llTA6gkaLuefFUX0/V93Czc4ctVFeGGPeDJ7+SCSUXzZrjvKkb6U2qzgx87mM+HDb?= =?utf-8?q?D0AHIqQ4UZ77rSSfEepUf4gN+pteJHUg3pjdVgrL179d76jnPpCKgbERQwhQb4+2F?= =?utf-8?q?Ru+oeBrnIN1TSynDV1lK4mAq9Z97Qo1XX26grM75K7vpZlA0dyA5BbXdLag6e5vTH?= =?utf-8?q?YOwhtUYBBL6wnPze6Rak4uDKpqQoNFIr1MzSBrZ312vdKI7bYdP9otRwvlAWnX3Qn?= =?utf-8?q?Rw8GFNEQ6Fq1HfI73Uz4LiEegCQObiD6GVzoUnc8sp9rEvhNXpsAd2x1WkG0gs9tI?= =?utf-8?q?7aKs10EF5+Z9EGhrFheyVtgLeBybSxnnk8NfUl2krya5s4L5JnW4WPAiiN+6NVPB3?= =?utf-8?q?Eu5m1p/vfs+Dm/UVpEvTcibhC2Sj9xbtLKcvJtAhon4RnEG9iszN3JuAnwGWJFoMi?= =?utf-8?q?eqDdk1i67PBJg7wsbP4N6hkpSJuph44Z353O+6vLlACf1sJ1JBoRZiO8O2dYo/9bg?= =?utf-8?q?ww+7RASew7DA/lcCqNGMnbAURRlv/kU9yXUAT8GZX291ZhFEEaGtbrlPjb9GJ47BR?= =?utf-8?q?f3yZKPs7u62OTDB2fOMQzK78QovMBfXNe6ey/PcHfKPgtEUnM8PBGZt2UdqlZEgoz?= =?utf-8?q?yQwt6P6u85UXuuhq1ZpMtwWHR+T1uhdqoMtxy4JzF5QSVPMteGUH13R4z1Au20MWF?= =?utf-8?q?XZi3vnzk/3u9Ele1c+bNtYxsBGpWxDKMJ0Yi7q5jMu6N3A6TEIczxo2h4wNv8xb7M?= =?utf-8?q?lgBzri3OMSqMeYCYUE78+G/AS61IKn9KpXKTm94MLjYfHN4BfEgyDlwVypAP9Ib6u?= =?utf-8?q?2c6+3Mm04gpUgCgtWs5T8gHyY2IHIV6iHijGCST+ViGPlIuuva5qMM2sI0gjbgArP?= =?utf-8?q?ohVR4/o1tWggQQ8YU3Hf/LPweVo/S0KX/ha/zYFosKOc6tTyjePhNotxDs6RUjAdS?= =?utf-8?q?CP+T5MEnkREcl9Dx8Pia/oXUGQFNX5UPZZzK078xJVrRdEZk3f4E/efjNRqwvnT9y?= =?utf-8?q?YmCuSCEOoNRMnILpsp32JkmQexOPU+eWTUioM3/+YmZn/KW09VYuNQDA4CnZdcvAC?= =?utf-8?q?vRGVvOKR3teX4LPOK2/NpFUB3VJrCUhcfTuLLy3k2OGDD/5ppvG3uNkR9zQ0Mar5y?= =?utf-8?q?TJSvYx+tZGKxZR06tBGdRxStda2Jyjn0wcw+AECYptCYTLa//t5xex+sgn0vvOQnd?= =?utf-8?q?l8Evi2i2NCXPP6lOGgvGB5zHQEczNILRpdIgqVNZy4Fsuf8dsUqho3WSSFp+J+4+p?= =?utf-8?q?o2/XWorjZSL2PM++9M8666EMuxTOLFHbxwa0itwSf1CSRwfTEAbM51rzeks8h4GDJ?= =?utf-8?q?peFr23PVrWhxOnV5hTP34ahpGjgJNBl5Bwy3Wj6vPtdH9wW0EKefhWU=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40a898b2-9ed7-432e-4bb8-08d9ae86b2c0 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Nov 2021 13:39:39.8232 (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: 1KV8phmLh3izguW8uSKD7vJOR8vqIlb3ij7/ZC3BwL2/8XjprNGwtzK1Ec8yEYCDbyrCB8Ynmrm0UGvBlxiyJQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5325 Bit 0 of the capability register field has become reserved at or before spec version 2.2. Treat it as such. Replace the effective open-coding of find_first_set_bit(). Adjust local variable types. Signed-off-by: Jan Beulich --- Strictly speaking IOMMUs supporting only 3-level tables ought to result in guests seeing a suitably reduced physical address width in CPUID. And then the same would apply to restrictions resulting from MGAW. --- a/xen/drivers/passthrough/vtd/iommu.c +++ b/xen/drivers/passthrough/vtd/iommu.c @@ -356,7 +356,7 @@ static uint64_t domain_pgd_maddr(struct pgd_maddr = hd->arch.vtd.pgd_maddr; } - /* Skip top levels of page tables for 2- and 3-level DRHDs. */ + /* Skip top level(s) of page tables for less-than-maximum level DRHDs. */ for ( agaw = level_to_agaw(4); agaw != level_to_agaw(nr_pt_levels); agaw-- ) @@ -1183,8 +1183,7 @@ static int __init iommu_set_interrupt(st int __init iommu_alloc(struct acpi_drhd_unit *drhd) { struct vtd_iommu *iommu; - unsigned long sagaw, nr_dom; - int agaw; + unsigned int sagaw, agaw = 0, nr_dom; iommu = xzalloc(struct vtd_iommu); if ( iommu == NULL ) @@ -1237,14 +1236,13 @@ int __init iommu_alloc(struct acpi_drhd_ return -ENODEV; } - /* Calculate number of pagetable levels: between 2 and 4. */ + /* Calculate number of pagetable levels: 3 or 4. */ sagaw = cap_sagaw(iommu->cap); - for ( agaw = level_to_agaw(4); agaw >= 0; agaw-- ) - if ( test_bit(agaw, &sagaw) ) - break; - if ( agaw < 0 ) + if ( sagaw & 6 ) + agaw = find_first_set_bit(sagaw & 6); + if ( !agaw ) { - printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %lx\n", sagaw); + printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported sagaw %x\n", sagaw); print_iommu_regs(drhd); return -ENODEV; } From patchwork Tue Nov 23 13:40:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12634201 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 1E309C433F5 for ; Tue, 23 Nov 2021 13:40:30 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.229609.397059 (Exim 4.92) (envelope-from ) id 1mpW1q-0007lr-9o; Tue, 23 Nov 2021 13:40:10 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 229609.397059; Tue, 23 Nov 2021 13:40:10 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mpW1q-0007lk-5D; Tue, 23 Nov 2021 13:40:10 +0000 Received: by outflank-mailman (input) for mailman id 229609; Tue, 23 Nov 2021 13:40:09 +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 1mpW1p-0006K2-24 for xen-devel@lists.xenproject.org; Tue, 23 Nov 2021 13:40:09 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.111.102]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id df5d4ee1-4c62-11ec-a9d2-d9f7a1cc8784; Tue, 23 Nov 2021 14:40:08 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01lp2050.outbound.protection.outlook.com [104.47.2.50]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-22-BSAAXH1QNjONoB3pIxpIdg-1; Tue, 23 Nov 2021 14:40:06 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB5325.eurprd04.prod.outlook.com (2603:10a6:803:60::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.22; Tue, 23 Nov 2021 13:40:05 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898%3]) with mapi id 15.20.4713.026; Tue, 23 Nov 2021 13:40:05 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM6P194CA0020.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.19 via Frontend Transport; Tue, 23 Nov 2021 13:40:05 +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: df5d4ee1-4c62-11ec-a9d2-d9f7a1cc8784 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1637674807; 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=7UpnXoNN4OOD8dNV51znqRmM214jyttiYXA4qdhkm0s=; b=dAni9xxVsWcVuWebXbNYrplFK40Mp2MfgnzKFCu++hvtuyzZXZ7V+YknUzmVuPYUSPHa0K gQ1ePoeL7qm5QV2hQthewxUggqXjtnL2V7uW8JGYEORIYyrohld69/uhyr3uVMLLu45/c3 Vvzc8Xo6m4k9b1cFSC0PMAsEmUJOdYQ= X-MC-Unique: BSAAXH1QNjONoB3pIxpIdg-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Kbs2bI/JfnKfMCpQwEF4YQg4k4MW4uhLmnEkb7zVXApJRQHOnx0qQ6Ewht0kuJuxabtbLXp8xZLI40Bm5DEJxzK1iCmCV+ficfoffhjgrwqJHIYRFec5HM84gW+Q2v0ddNoW9/nBID1x21EBw2E8iEIzKOfVsuXNBCa+mjIBcaNlg1fiOHSHi+WOaMJb1SqJO36wAgRDKOxEDqzAGpGDG7xcdRfg7a03Q8bhVP+JmZme+feHde1P3HaDwm1hDjizgqjm7rnIUi3K/Jwv1yXHgGCIEyh842czyTBOuBIUZhJoo3SP69h/SULxCsJoXin7SkHXoRzWT+KKTH0PspM5eA== 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=7UpnXoNN4OOD8dNV51znqRmM214jyttiYXA4qdhkm0s=; b=aPV6ZGQDmhBwY73MeCiBIdoC4qL4PYKtsBFnEO/ClZTM80w1wsBmKQz9tLOpXf3R9ZAwiaYNm1M9x1yGBkpMocKOBMxCNyaJbpnnKG3OgVgQJJ8u24fAfBMsI2F6HikQQytB29iowopvErJO39hIxGhb4PbxvUWJkcJ/jkoqfq6KI1c2lIlQV7wP4zXRVqU8EuOjxb/Bc+8PSxdL088y21/KO+jx1y0SE6b0LJqOSfdbU+5JOP+ZFWjTLEchq3nGkTy7Z83L797hOX0MK2RXEmYysLJLotv69E0D81NnkPnlL/YEETv5bmNk2sP9U4uKxQV38kJwg2s24aOEj5ePkQ== 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: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Tue, 23 Nov 2021 14:40:03 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 Subject: [PATCH 2/3] VT-d: correct off-by-1 in fault register range check Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Kevin Tian References: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> In-Reply-To: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> X-ClientProxiedBy: AM6P194CA0020.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::33) 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: 10cc8ec8-4365-4cf9-493f-08d9ae86c206 X-MS-TrafficTypeDiagnostic: VI1PR04MB5325: 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: Wq4TDOz9ITbJYDbXN6cnU9heRTePoDQpA+YgGwqb5V0Kbgopb1ofVQV680mJbfcqO0xjDXAQaEXVnQuREUruh1GrphMbLjSESopBN/1gKoKEMCIMz/PBRwirn8mYNi8cuEvuA5BYLkBAyfqGg2uJsHg5bNeQFAQyIqn2UObBPUllQVIHNpuflVTlA1s4aiwSs7FyeJQMiQ1oxR5/9eGAODolCsiKWnzv+jVkl/hhmVvnzr+UR4MzjjiiKagsVkV6IS67Vh2L6/vnVX9DSRIhu8ojcDzagE/l6Cpd2Oi5QQ+uOa/TaP+I2Z4aXQBcXmG52ncKlS534TGEf1f8tgeWOirK0zs+GxHTO0pcgl5M8eXbKfiUwGzGx0v9iSP1/YopJ6jUiGCuRP+6iqHG/hi0XrlodX9xVLn/QgeW0ISXboDCrWKmoVI7MrP+sw+of4fIW3dvwLueQK0p76ILM68AnkXetZZOj/rxe6BKIIf8NJHlBmkDUKqEk3yOOemrF3jO7AtB/xRDvm7+6lG/tFVasD9nDgGNBGl1ZGnxhmyzy9I4hLEpF1MXmCBtulZFmXEQQwC9DyjGqpjBAVX+BvTpzHQG797rdI/iLYVbbTQ3T/dX/5TLY5FaY0maAUFlx59PECdF4RYaHP10SArL3JtInh5KlqZdQUuWo+aP0BxtpnC5+4ZKZAetN0OuDHnl2YQg381DrUEkaRdo+6iySzC/ETuxD8TNyxX08hSxRh1uHO8= 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)(956004)(2616005)(4744005)(66476007)(4326008)(2906002)(6916009)(36756003)(316002)(66946007)(6486002)(186003)(16576012)(31696002)(5660300002)(508600001)(8936002)(38100700002)(26005)(8676002)(66556008)(31686004)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?2zZSp9Y6zsAJOKvYI2Ag/GPPGYpi?= =?utf-8?q?tCQo8DPebGnkjtyAT8BsDB22eYfJyIVNRf33l5/t8mk37kgA+ryaKSXzgH4l0B2+j?= =?utf-8?q?wLTBqThCWLTNFq5JiQlTsS1DPkq4jnWZJsP8Wu280ks/Q4n5fOZo0PTA6VJ/1iCGB?= =?utf-8?q?5bcScDImNWWkgXzim2D7Q4UYwBb8s2bPAFr0yMT3Txg5uW1WQw2kF78TsMupSVHVS?= =?utf-8?q?Z82Gq6AZ89YnAMJSf+hHoaZa2vqfRqopTk2i9W4jar1Od4O5u6nfrYmaUhoUvzak9?= =?utf-8?q?8EzTOj4zd4Lur7phoE8hkDkrUUZ9tTAzeZ1DhP7A/JsDFRNlUdPpdSM2fh5xw1vgy?= =?utf-8?q?6KwyLVCTW56gophOB40eqEYoYby0pG1ZCV2ebndYZwwORSynSSpsKAHMic226gQBI?= =?utf-8?q?UnHaTnBplhil7zztQAYVpsrkhziGk6Ukz6rUEjqso35N9tYJkrgU4RjNfKk7IiK8+?= =?utf-8?q?SXgGW5Rdv/LGEjxaDFE/R2sejGONAR5I2Mn0qG48SFOU2Km3U0ZX7sziQkN78cdqI?= =?utf-8?q?clZp22f+MjxhLz2sQNaJgZernq/UuNY0K0cKwkDLfIEaLuMlRF4hSfe/eIXDtxN7Z?= =?utf-8?q?7zKC5AnuE3w65wPxhCXZ1+vW5wsgtHm9EJV8SD73LnVhb0PosXV9EqBjlF42dhvg0?= =?utf-8?q?qHLLwRJfzZh1t18TtGo31eE29i93W7TKep7vi342c8Gu810SpArNrFPwxt3WSB17o?= =?utf-8?q?3kKnkmy/fQB2618u4IBjGG11pQEUALGyEclAY7cG51t2+urAUczWzLIiSfSLF+AGP?= =?utf-8?q?KhBlPTDZID+czH7yyb9IUanzTggbJpuPJo7l6DGLSuSGfRS/JbmpKwzACKlOZEHu2?= =?utf-8?q?qSbMbK7zUJkvAE3Abp39HCKI3JDOjaXM0RsSK+afIzSjfRH2odsgz+nX0ee/pAxsQ?= =?utf-8?q?CTVc/T1T0uQ+tqW3IJxEhz5u6LB3BnrmYUVUD8SOejd7Gyczw+cWe10ejELY/TIUj?= =?utf-8?q?k6lyrIfniHnsr0YbXfJK275xPx/tpZG+bOtgiT/xmZAhM3PLgrIVA0+OlvV2I4r0m?= =?utf-8?q?pMMvaoAqD7K9nA5Djl8oGtMw02f4Dqgwb/MCT+YaVeeEBYvpzaa8pWXwAR7qs9P+9?= =?utf-8?q?XhcbTViPaqe/qDoxPQ60i1FVX1LR6ScfguG/4f7/Xe5PgVtnvoIi+L2Y7XzPmm2z7?= =?utf-8?q?0mse5vAPg+BvL4/qWqFreKP1EmyaXnWPm47BJkchos0/3eT+PsfWXN62jxKo+Oonk?= =?utf-8?q?VwsD7/ppCCEFFiPko3Lfiaqwsvt5tQAIeaxdjJg+2iPT7Pg7A2/7gNRvIz2LU+8M+?= =?utf-8?q?hRwK6WhpKf0H+0gKRGBWu2KF4XyKSHX0ts0AFDt14ci5sPvCGOC4g96opaYev7uRO?= =?utf-8?q?Y9JSo+MBhFBVc0+ANtNondDbwgiJFu5g8Vh9lyb7QwI2CWU+FMepRJMBLrY7RGgDQ?= =?utf-8?q?XKAVaPEoE97zj7udd7BfOMtWXxRxcN5qpTdtf8F80HfVdvM0M9tAInZlRp5wSGaMN?= =?utf-8?q?xRQJlaPPA8rCpphKN8Xfg1dntvwYZIlzQs6FtnHlB7BOKIvvRVR/Wion70mgg9rq0?= =?utf-8?q?M9LDU6PZNoR+puDRBrt0fa5FI6wv/evPXzxFe/MMmq/DX8Sn73PQ/Pw=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 10cc8ec8-4365-4cf9-493f-08d9ae86c206 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Nov 2021 13:40:05.4477 (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: PMaa9gcJ4vcKR4TExIcAq5j5eySrab3SoeocB9lKRROFEYeMo1RGzLYa/kjd4gK5uU1TGLiy5n5o0aJWRroD2g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5325 All our present implementation requires is that the range fully fits in a single page. No need to exclude the case of the last register extending right to the end of that page. Signed-off-by: Jan Beulich Reviewed-by: Kevin Tian --- a/xen/drivers/passthrough/vtd/iommu.c +++ b/xen/drivers/passthrough/vtd/iommu.c @@ -1229,7 +1229,7 @@ int __init iommu_alloc(struct acpi_drhd_ quirk_iommu_caps(iommu); if ( cap_fault_reg_offset(iommu->cap) + - cap_num_fault_regs(iommu->cap) * PRIMARY_FAULT_REG_LEN >= PAGE_SIZE || + cap_num_fault_regs(iommu->cap) * PRIMARY_FAULT_REG_LEN > PAGE_SIZE || ecap_iotlb_offset(iommu->ecap) >= PAGE_SIZE ) { printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported\n"); From patchwork Tue Nov 23 13:40: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: 12634203 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id CA5A8C433F5 for ; Tue, 23 Nov 2021 13:40:47 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.229611.397070 (Exim 4.92) (envelope-from ) id 1mpW27-0008IJ-Lm; Tue, 23 Nov 2021 13:40:27 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 229611.397070; Tue, 23 Nov 2021 13:40:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mpW27-0008IC-HZ; Tue, 23 Nov 2021 13:40:27 +0000 Received: by outflank-mailman (input) for mailman id 229611; Tue, 23 Nov 2021 13:40:26 +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 1mpW26-0006K2-5g for xen-devel@lists.xenproject.org; Tue, 23 Nov 2021 13:40:26 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id e9be069d-4c62-11ec-a9d2-d9f7a1cc8784; Tue, 23 Nov 2021 14:40:25 +0100 (CET) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-ve1eur02lp2054.outbound.protection.outlook.com [104.47.6.54]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-31-UhAEPmoZM3e6cHHxmmDjGg-1; Tue, 23 Nov 2021 14:40:24 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB5325.eurprd04.prod.outlook.com (2603:10a6:803:60::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.22; Tue, 23 Nov 2021 13:40:23 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::8062:d7cb:ca45:1898%3]) with mapi id 15.20.4713.026; Tue, 23 Nov 2021 13:40:23 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM5PR0301CA0004.eurprd03.prod.outlook.com (2603:10a6:206:14::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.22 via Frontend Transport; Tue, 23 Nov 2021 13:40:23 +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: e9be069d-4c62-11ec-a9d2-d9f7a1cc8784 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1637674825; 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=GlPYVPHHKY0fQf4fXHxR88XAwYQ3msowxF+8PXwpKEI=; b=CuVWfBMBTuC27D+2bhQdClmbLCZXg8qZF31ywejirw2oESN5GvYAXMvu7hkMuDEbUGOshu EyDp+TtCBIqLFY4gqOv/fU4ZXYqPJsfbKYpHMGzWcl2UfJS6wifhwmLPUtZU+7lV065umf IPEnzRtD2en4gFL6fMwpXyz1zzInpso= X-MC-Unique: UhAEPmoZM3e6cHHxmmDjGg-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e3OXwlBXBA1tw7vEgUymdKuo1o5wqWQciBxJjY/2bke63RZqF7BUb5CjoR3nQlAIPxjWBYEmG+R8U1ValllOgy6iK1zEhDd4Wah8SmdnjkLmrDZHxlEWxhAPvU6BXCI4sg89daJilebanLB3wsnl52jhIp1CK/3HrQ8KQMXjFL0mcCc8xrzchRMOTUcQ5VHAjKICM3IItBfykZ3HoW7jNcp/duiIgAzw9DVTCRrDL2Dtb85IcMzDCmY5B78J/9+NimK4D2IJNMXbDQ8BH8vi1NijgXRUzQPkhC4tu2ChO260dneEwZjbUjTNjUUebhM61b7EsAUuAPWVZjg9ofq0ig== 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=GlPYVPHHKY0fQf4fXHxR88XAwYQ3msowxF+8PXwpKEI=; b=krGXBSTXg6qwRPtca0mBQdDsmCbspKtZskIEUMfzOcF3I+8A+tQm2AeTfVSj55zoyCBSyj0kSwd8JF1y343PxzZQT8pgJ2763x7XSTeILvJl7EpHy8YCB6vClsZnr0R6VBHb48meKN2OfqXG6oH6kOfUYKmEpf8SIl+/HYZS3oqQqQO+FCCvDjcnWUaFAtnRKkwelMV6x9OMSo42RSDxh6zgQFYahlbvWQpkoW5qMsdox3i9/rSISvrezXmbW4VA76Hhp6AR5VvvtR/8jJGbNyOavBGKvhbrLu3e/94bCfYyqccr6ME0bDsFBZTsSgFvYLM7YRuRcfr3FVezKxMHGA== 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: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <63da915f-03dc-f846-3c6b-e90890d1f8fc@suse.com> Date: Tue, 23 Nov 2021 14:40:22 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 Subject: [PATCH 3/3] VT-d: conditionalize IOTLB register offset check Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Kevin Tian References: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> In-Reply-To: <54e38a20-5281-2ab3-8513-3506ab66dbe8@suse.com> X-ClientProxiedBy: AM5PR0301CA0004.eurprd03.prod.outlook.com (2603:10a6:206:14::17) 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: 4b5376d2-ca02-4e53-a250-08d9ae86cccf X-MS-TrafficTypeDiagnostic: VI1PR04MB5325: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6790; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: H4dRqMBCOdhQ4C4FIxDcFqJruA1RgqcaI59PQ++3TskKjPxP9C4rkKM5//Q/ChJ5isgXpc+LWe27vXNRBCa3qcv3Kd6jJfpMwiUPOzu1BMn+fM4DleJW+VrXgZhsw/B4DeHTiftufsbGXARsy57prF8wIs9ETA5bFQYsi041+v1j+2uYD4JKCcvmbOVKLwJE7hIkgBYxb2+GeR688+GUmuxHxwD2Rc/ajEdMvqHIEdHvmzhrvwVgTHlm4tYmMap/eQX0MvNTOSe+xWMogi3Pf1k/1FQAlzBT8/nfXxDOb36N/24ciVw+GzRNJlpsT0Ibd6f3FluPw6PkpkJlLuD3ChsEoXqtIJonohX5Xan/F4p87XNgq/zIg8hS5T/bFs8mvEhB18asoS8WU2YLkDTDYDo8zrkRwmTVy0jSdrbZ/B1KJXMxeXI7JeNDQgUN+Wx0IUhAKbAR7dEZtA/uC1KpcRb7woe1XESaJiLUKFxg64ycBPgJlVgw47GN9hmw1KZIbinz0gFKreRZTm+PCgFYyd7YLAhL+/vpBAUP7nBJom5Z3FX/iixIb7EhTISxC7xBdkpHsxRk+KMGO1untwE2rkCZN056Ymfu2bgcaP43gm1gCcKYfBLLi6WyEnJO2KTu7aWDYami356U6vv5NI3cFnqYg6zn1HrpLlR83S5DVgwrrlSq+v3kJbwxqT3s0Zo0w9KPH2VqP9U5G1iDiReZN5GouG3s5BtJREPgkzaBm4A= 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)(956004)(2616005)(4744005)(83380400001)(66476007)(4326008)(2906002)(6916009)(36756003)(316002)(66946007)(6486002)(186003)(16576012)(31696002)(5660300002)(508600001)(8936002)(38100700002)(26005)(8676002)(66556008)(31686004)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?BKWby7PZVlOfbode+ECAmAzlShi8?= =?utf-8?q?uVG4+YGUkpUD22cyM1AkPnoQXN6q6xI6zOC/KjYfqph59gimorVR7ZbrDCYdhXvWL?= =?utf-8?q?FEdHuSSXx6eM32TvQsPEpvSQnzmWhZytawNUfp+RAhxSpunvRHD2BcfAxQlQPRuzQ?= =?utf-8?q?7Hmxxxu7rzHL+1rKamwQu5fhYyHGH5JkgBkFnSiLrPMuZIUDqTfcDpGXIia7Smcqu?= =?utf-8?q?pSBxilKY1jbXLufqD7k+O7Xf93PF4va3U40akNZq2XfXXApy8KyGrwrV486KV7Du+?= =?utf-8?q?iu5DILvwcjOqCUl5jo5RFcrwakNVxs/X2O7Zsomy9bWYBfttpKhvdFDvby/6CyJpR?= =?utf-8?q?CqO+otUoQZo7H+HtI1Bwsv6cARsR4EBPu8vytTLyzw5Px7F+85SKKHg4ouHfukfzv?= =?utf-8?q?fI46uwQE3HS4Jgxv1bxzmpbN6RcolQHH0/G2ou0cBtGaHHOYi9r+Ajsafz6o+3nkX?= =?utf-8?q?1L4pOUh1q9yfKpte06dVdH/yd0SkCXsV9B3c01r29b+waCVBkc6DivqUVQsrwXec9?= =?utf-8?q?UmpQDXOLmIY2i+OgN99TinwXSAqx1V/ZngawRvfiCznvCl9yTthsL7Ew9FQDyMgQi?= =?utf-8?q?wRA8rVetaBP1sg/kC7uopV6Olfr0TCiiU/yGXWeFHmcrMpO6kWY5kL+RL53qnrAz8?= =?utf-8?q?bp9ooF1jCpyk3HL+k0dhEo91X1E4bRGlSL7ZXV7RM2rgNjweIhGqvcGWiXb3Iwk4r?= =?utf-8?q?DeXvfwMUol/rKzQfKujQzkXwgmF1uTsXu6v88JwyoE8EFUA0KU5pEZd6le5inlAiE?= =?utf-8?q?4lyxsaozHl9pKSvVN8nTg2t/WNsMEE71BQAXXjEVlrdUQrbvd0zfnHKzxwGgRoDBv?= =?utf-8?q?gQzTVEeaET6rEhUGfpApjlX0FJnfBskL3NYpKXTQ/DUqki7BV6C1+yL2DzUxxLEmw?= =?utf-8?q?jpGue5a6xaPqubrie6YUYPFLpvrz9y0VsjY1/lY6YPxPNr7ip4L4CTWwL7Ex6wfz5?= =?utf-8?q?I+83GjHtj8/oOVB0lOiOSxFlELwL4fQKfcq6y0Dqn3gw0pTlSqwMTOJ2T5SEKu7MM?= =?utf-8?q?FctmCSy91Y1CwVRwXfmepJWFVTUj3lDDR4WddlD4mnhfnGrTE73A0PDilIzJ+lOEC?= =?utf-8?q?nJsXo7NwvFiVEirY6BU/MGISssbAMYeYo88xAS+eYMjht5yronw+EEhcIqSwjpikz?= =?utf-8?q?V8+c7nQbzzi60QEzIkmROKZEaf7Qg/T0c3Emy8yaDmsXFzveFyv4RQA9LwPjEMhST?= =?utf-8?q?cKTuc4wuynuop4BRgDD8L3h874kh1PwkUZXqbtAjogM2RsNBXJE9eqcuOgNP4s0pX?= =?utf-8?q?koyj0C5MuO0gxgYWVXOFazA587zLrohXyC9R+J18RsgULCXBU7WB56wCCuMoE057s?= =?utf-8?q?QDsTPA4nBSxnwHWOsWGlyxT20bmA/r/fbTX0p86RoalzemtM/rMz1qne1zEiwYKQS?= =?utf-8?q?myOQmgR7cNLVW0f+3bltK+rShCFDEep6Xnr/OVegilAbiCoGuKk8khGVUxkVjk9nI?= =?utf-8?q?DQzX/R/okOxEtmU+ykgXPpJW/WmXvO7V8HWbLEh23snTHv/V5EDM+XgVHFXb7aR9b?= =?utf-8?q?sWZb8wVqVceSz4H+DkPxgwdX+adxdgoohsonfecHDxmWObJz1M2MZgE=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b5376d2-ca02-4e53-a250-08d9ae86cccf X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Nov 2021 13:40:23.5595 (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: ylcz26brxDMbB7XWxwU3kUyJnLnKak7guYHVZiKElvlknl6DhMQ5YaSJMEbSyWbGOAJYSlUMIaGuAZTKznYbQg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5325 As of commit 6773b1a7584a ("VT-d: Don't assume register-based invalidation is always supported") we don't (try to) use register based invalidation anymore when that's not supported by hardware. Hence there's also no point in the respective check, avoiding pointless IOMMU initialization failure. After all the spec (version 3.3 at the time of writing) doesn't say what the respective Extended Capability Register field would contain in such a case. Signed-off-by: Jan Beulich Reviewed-by: Kevin Tian --- a/xen/drivers/passthrough/vtd/iommu.c +++ b/xen/drivers/passthrough/vtd/iommu.c @@ -1228,7 +1228,8 @@ int __init iommu_alloc(struct acpi_drhd_ if ( cap_fault_reg_offset(iommu->cap) + cap_num_fault_regs(iommu->cap) * PRIMARY_FAULT_REG_LEN > PAGE_SIZE || - ecap_iotlb_offset(iommu->ecap) >= PAGE_SIZE ) + (has_register_based_invalidation(iommu) && + ecap_iotlb_offset(iommu->ecap) >= PAGE_SIZE) ) { printk(XENLOG_ERR VTDPREFIX "IOMMU: unsupported\n"); print_iommu_regs(drhd);