Received: by 2002:a05:7412:40d:b0:e2:908c:2ebd with SMTP id 13csp335192rdf; Tue, 21 Nov 2023 04:17:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IGtsSDTSwHINMl47eRvM8rPjgVb3kkOvDlWhVAftQDWiMmHKFf3fu1IZXNZhEuxDHIjAEYO X-Received: by 2002:a17:902:c40a:b0:1cc:3c2d:1299 with SMTP id k10-20020a170902c40a00b001cc3c2d1299mr13114946plk.37.1700569055629; Tue, 21 Nov 2023 04:17:35 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1700569055; cv=pass; d=google.com; s=arc-20160816; b=qEQivz+OsVxCuFlOY8UvOVcZwu5HToILbxwdpHLUI6EqTVCIlf9wdhWvRFedcm/0R4 0K38C/kGVChBJmZE/hxIHSB+/dxGnJe/+rTxqMbFm0uGUkR2csYZNMEotkWwORuI+Voi KT1E0BAc5znax03DlWjA7EK2bHeGNIPxDNGSYxVhzkUZJiovAt0+b5FsB7F9VhS2Zg5T CjcKKjHWfa21nP/KS7zGxz7h/OoRA5x9Yg0HW9CSs+chJk0kJkq2hEIpqZ03rdNqKcTX ZMxJ5SlWfG+EpUP90V2pNpKKGmqMsJreR9onqgGiruKtHFOGIxY8Bg6lUH/F8qHUtoSK Br3A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:in-reply-to:content-disposition :references:message-id:subject:cc:to:from:date:dkim-signature; bh=N9rxtFqhYksrQR68F2vWaz3Y4BNasdyOZlnuJlBC9rQ=; fh=bNRMms8bHg1YK2tHa2FHj9wOejOM2THExSKSfpKJt5k=; b=xOu3wY4fAZNhFftnYujbyPSwzPMwC9BumwouPLOzgmic7veyNw9IeHd0vF7vUTou/4 Cqo4VEHDOswJJ4kq49zZrBgOKchNeJFKKWaGXpSn5fHxef7VdwxZuJG9cQORAgVlbtuT vHfYTkc4WID3U04P4PwvmQKJeiG5t8Vb/SSQ8WH+3mwTmp/5kpfOrGVNpsrmPbTLjPTM 5w0Gq3E+OTm9e4VDV7AKbZMtuzQkPD38Cej5v28yszodB0ucgGxAdUjVaFhu1BawYq9W RgCHkmS9Psew3dL0KOCaFSxq4wq9W8a7ce635cnmp7qNStDY4AdN5q2OawG2i6pHe3Hi arZg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b=CKy8d5yL; arc=pass (i=1 spf=pass spfdomain=nvidia.com dkim=pass dkdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=nvidia.com Return-Path: Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id k8-20020a170902694800b001c9d03042b6si9654860plt.7.2023.11.21.04.17.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Nov 2023 04:17:35 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b=CKy8d5yL; arc=pass (i=1 spf=pass spfdomain=nvidia.com dkim=pass dkdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=nvidia.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 06BDD8087E12; Tue, 21 Nov 2023 04:17:33 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234667AbjKUMRO (ORCPT + 99 others); Tue, 21 Nov 2023 07:17:14 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52622 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234585AbjKUMRM (ORCPT ); Tue, 21 Nov 2023 07:17:12 -0500 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2064.outbound.protection.outlook.com [40.107.220.64]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B13A5191; Tue, 21 Nov 2023 04:17:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VuY8BIJnlfKL1hK83uZvbbQ+kBwYzeAvqS6xFClzKv4qXzYp8y2ZdxrXGlbJ+IjASgrBlAdVSs9VN12nvPp01smJgIfmq1zvtLVUY12iGc0P0/XbWE6Nzs8iNkh+9K/E0B/PhZ8DABsNFRsvyaOrIn0av8vFN/29EX4/kENTJwBcjhMsR1HKb4CTtl0cb1Nv2s2rAR2Fkxm3OamNrPU3a1zyUNPK1SoSDLn+v0er983FrZIsTJJBSnbV4wdRqRh5vrfcYRMbmrewXj4wNUYBvHk7Lk0IsyGRSmaC9hjV/pmRGalOQT+rtqw7DWnP/yFiDUSzHUkQvjAh33kxZULY4Q== 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=N9rxtFqhYksrQR68F2vWaz3Y4BNasdyOZlnuJlBC9rQ=; b=kNo+K+jVn9/mtv/MGcmhR0zf6tNbXLt8Tu+NBQUpRL2sN2AzO6wxNYsNnuYezcnWtuyDhvtgPa13RH6Ud+5O5rS7XwDNznfGzbV/c/DSlaIpgm8MRoHm9lpCwbqAchFsjUz4FX5JZqtEH8UK1m4Swoyb5zGWKIRydwfvSPFPfbH6Gp6rtZ6WfF4/82Ziik6oLkMHmERErevbMEcgwW1Bgl77uarHWuPgivMEk9VHZS+eLP8DZEzfk00K9vwu95cAZqAFym0IANkUZQFBqkUIN70FoPxIyZ+EAWf8hkrkOCfGerLOpvd/1xnNA06hIX4+7/6asBNANOIKp0mvhrFzyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=N9rxtFqhYksrQR68F2vWaz3Y4BNasdyOZlnuJlBC9rQ=; b=CKy8d5yLGZ+v6qWgooCudaJaQTx3ABEC0YJ8Trg8LTzjk9mPYM1VlclBFuL1vm1i3+hhXAhsQi2JqfljvsP+Ku26vze2+nB22YBwVSTUS69dBJThbi/0Ixf3PZHeAivYSUuhvnAkReQLgo7inRvSu051TfX4bI3FLPDHQKDE5ufRi3FcKp4RGaIkUZKxfu7sNa57o2rDBTNwzO7AQNWol0aDYTv2UBJNcRAxng0h4JzFlh6Wduf66DRUZPxZQFvMVSFkLhljuFeFXV3AygreAdCA+FbhWf1hr5oFN8WAp6Rzk3fRp+K2QM7NdA0c5y440cpMHKJKURZqVPla1e9hbw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) by CH0PR12MB5091.namprd12.prod.outlook.com (2603:10b6:610:be::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.28; Tue, 21 Nov 2023 12:17:06 +0000 Received: from LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::60d4:c1e3:e1aa:8f93]) by LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::60d4:c1e3:e1aa:8f93%4]) with mapi id 15.20.7002.027; Tue, 21 Nov 2023 12:17:06 +0000 Date: Tue, 21 Nov 2023 08:17:04 -0400 From: Jason Gunthorpe To: "Tian, Kevin" Cc: "Liu, Yi L" , "joro@8bytes.org" , "alex.williamson@redhat.com" , "robin.murphy@arm.com" , "baolu.lu@linux.intel.com" , "cohuck@redhat.com" , "eric.auger@redhat.com" , "nicolinc@nvidia.com" , "kvm@vger.kernel.org" , "mjrosato@linux.ibm.com" , "chao.p.peng@linux.intel.com" , "yi.y.sun@linux.intel.com" , "peterx@redhat.com" , "jasowang@redhat.com" , "shameerali.kolothum.thodi@huawei.com" , "lulu@redhat.com" , "suravee.suthikulpanit@amd.com" , "iommu@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "linux-kselftest@vger.kernel.org" , "Duan, Zhenzhong" , "joao.m.martins@oracle.com" , "Zeng, Xin" , "Zhao, Yan Y" Subject: Re: [PATCH v7 1/3] iommufd: Add data structure for Intel VT-d stage-1 cache invalidation Message-ID: <20231121121704.GE6083@nvidia.com> References: <20231117131816.24359-1-yi.l.liu@intel.com> <20231117131816.24359-2-yi.l.liu@intel.com> <20231120230451.GD6083@nvidia.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: SN6PR2101CA0020.namprd21.prod.outlook.com (2603:10b6:805:106::30) To LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5869:EE_|CH0PR12MB5091:EE_ X-MS-Office365-Filtering-Correlation-Id: be1833b6-2813-454a-1863-08dbea8bc6d4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RIMHxYIMJ97jSDaT2lmNWGa4spCxECXg3r/TpMkfp/zBifd3llbsOGg0cSOia/Cm0XcO22m8VUcwwLaYlFZHdMR8GSrs0OF5KbuDFUlJvyAlEBERQmKS0Net+EbJqVZLj5+FMHc5GSyydi6mqYToxIGiwmIaEXoXjwPAl5T96ywrTJHH/LVat1X7WtDPaKPbVgWSJNS4SEQOyz/tbrlz79fLXZRIHo6efeUI0QXZWivReCoXHBCemXOPnGlUsap0qh/kRF98+vEl+xP8RH6A7qupDUrN0GZ91TEMIPuJZocVL7K12kw9gIB/wYRq6mXPozn0vm+g5eflLJ2RK/icHYkdaXQT5F18mdeZF6tBLN+bcDKqiTj7uUIRWPl7UeRYR6nLYTFLo31XqbVlwjYnx1YhZhOsmz6qd+rmcp5JFMZLioflUGREDE4VWq8AJalVa7Cu5TLtzY1WRiWvu2f9GN9aRMMs/xNYDd5A7Ur996/740PvZr7bY+tnC/zscrdP2/pz6ujuL6FkW/crsdQO1sn9PCR7C2FUvEb3dY+T2Pub+6SaBSo+8FWB5CIUxR4p X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5869.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(376002)(346002)(136003)(39860400002)(230922051799003)(1800799012)(64100799003)(186009)(451199024)(7416002)(5660300002)(4326008)(8936002)(8676002)(2906002)(41300700001)(316002)(6916009)(54906003)(66946007)(66476007)(66556008)(86362001)(6486002)(478600001)(1076003)(26005)(36756003)(6512007)(6506007)(2616005)(83380400001)(33656002)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MFZFvtU+jfM5vIGUT+kNMAhIGJKEV70iOLiEDB73tUnnQZiPxgU3WReSVnNs?= =?us-ascii?Q?f2/3Dk6PblZJtOjNXtrY5U8XJHBKhQ6bw2zqMg2znvqNF1g0S7t2dqKbvk0o?= =?us-ascii?Q?TchCqHeTgbOKP8Dox8rJOdG5SvFbDCDh3JdDQo9kyLEni+G0booujbotTnUZ?= =?us-ascii?Q?hrnm9gGCCEYO3Z7baB79rkZVF4xcaMpbopyeNCCGv+7tGLhb4+d+Q3To+XBy?= =?us-ascii?Q?tizhSof3KoNdYLFJGpU+S3MlJHonYbFATuv18O9mu3fkLe1vunI+1GSE/k/n?= =?us-ascii?Q?/eD4Qttg6uaoBx16X5ik3J/QpN3EIvut4gp1pVPgKdi9X3aH9PPg14a/q9vP?= =?us-ascii?Q?otLG1qK7fpKqhtAbN41V70itPreAJcFeIuXtuP430Gf6GWqGggQJFYFjBYhq?= =?us-ascii?Q?IiUypFc1uQuUhKE3RBLS3t7nABIqQfD3Fz1yK5L6l3K/rI/TiQ2N1joTeXH8?= =?us-ascii?Q?GceIKvQWL48TojNzCfAiTr2YnIkMy3G/1v7VUKcYN2GeP91vetoBnyo+uI2O?= =?us-ascii?Q?wrTct8afnNb/0hPgknrWSZMlMYtXa+X0bmSQKSIpS9/E0rXKquLKH/Eg4ukM?= =?us-ascii?Q?elNR44YlaZs0VBGSPGjwyz9qsecnegYHzsMS29f+f0kNO6uZ9d0nof4iTGJu?= =?us-ascii?Q?Ge6nVPMwoYE9NNcWfPWwy2uQjjmYv7r3pdopTz7OQHfMEiAlJcJ+inRY2WPk?= =?us-ascii?Q?pj/Ow+vj4NBxzYvP33rfQ531pZUuonifDJlrjHOgc7Njirg3Bm2SSiD5BooF?= =?us-ascii?Q?s1CADz/ET/DH6p1UdWxf618OxNhhFylphIfa3Q6rwhIhbA8Kl8sPMW3OzFmz?= =?us-ascii?Q?42R8AQ94KaP9OHvNECfulaxL0d0WzOzUXT4Mk9/qBAEsNx71C1m6zaAoR3kf?= =?us-ascii?Q?NH0Oa+NwiNisYG6IKuj5gGCeQDQ3E1r8+f9J/YIE2XDj0aF+/5hqUGK8j4yS?= =?us-ascii?Q?LqpLrmchufh2as8aY8YdPtrp1NcyceowmjWH4Th8nP1UuQTbKl30F0PZWmbz?= =?us-ascii?Q?2YdVZGRA7KR3LnFBSBwacXsw9MXjSkp4UMgnaFpiDTf2jcI3M9F9KIaSDhx0?= =?us-ascii?Q?UtGm60+zulaCZhFndMzUkWbXe1pE55RzQOoRCRtUiC2tLz6/IDstEZKIrYPO?= =?us-ascii?Q?tyNzD9rBdodrrpGOqF6A8T8kIZ65KTyymnq34IXqVHsdJrc9igfLCKeHaNkU?= =?us-ascii?Q?0WNRy0BVh+N1wuVViJzyxb721racUehlQ8JcCDTx9VTpxhDohXEnhvOfehnB?= =?us-ascii?Q?cx5+DuivnrXWnlYmgUKA09aeIbdibL50PJvObkiSHQyu8flrD3fKP5tJP+H4?= =?us-ascii?Q?9OhzMkz+RuG2Zxkw9GnInok6If6WX2I1YvTOSg2DwIS1YtZa0o7H3TnX1od9?= =?us-ascii?Q?mkSorvX6XNiHhg31PkmwjTX39f1alKkm4/QQINSH7S7g728fflR2WbT+qo76?= =?us-ascii?Q?AnWjvIThJSKsnV+A2eU1Jy9RAlnkTYcYc0R2gHRJCnO5nr4J5gwhKaLsuS0B?= =?us-ascii?Q?mmCm9TEQv4cOgBrla3cCwd48+zwiExU2R8ZCti1dQMFv71P5H2MAxNxJUYwu?= =?us-ascii?Q?BBYTqlOjFADlsKD2IQpwgSZOSsBpslBhUdor/eQT?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: be1833b6-2813-454a-1863-08dbea8bc6d4 X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5869.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Nov 2023 12:17:06.2376 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZH103AjLPJ5jgyKQ3BMpjaLo7aw5UtMPl2GFAnUNDRfpVJXh263goMIWHnJZuxsH X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5091 X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Tue, 21 Nov 2023 04:17:33 -0800 (PST) On Tue, Nov 21, 2023 at 02:54:15AM +0000, Tian, Kevin wrote: > > From: Jason Gunthorpe > > Sent: Tuesday, November 21, 2023 7:05 AM > > > > On Mon, Nov 20, 2023 at 08:26:31AM +0000, Tian, Kevin wrote: > > > > From: Liu, Yi L > > > > Sent: Friday, November 17, 2023 9:18 PM > > > > > > > > This adds the data structure for flushing iotlb for the nested domain > > > > allocated with IOMMU_HWPT_DATA_VTD_S1 type. > > > > > > > > This only supports invalidating IOTLB, but no for device-TLB as device-TLB > > > > invalidation will be covered automatically in the IOTLB invalidation if the > > > > underlying IOMMU driver has enabled ATS for the affected device. > > > > > > "no for device-TLB" is misleading. Here just say that cache invalidation > > > request applies to both IOTLB and device TLB (if ATS is enabled ...) > > > > I think we should forward the ATS invalidation from the guest too? > > That is what ARM and AMD will have to do, can we keep them all > > consistent? > > > > I understand Intel keeps track of enough stuff to know what the RIDs > > are, but is it necessary to make it different? > > probably ask the other way. Now intel-iommu driver always flushes > iotlb and device tlb together then is it necessary to separate them > in uAPI for no good (except doubled syscalls)? :) I wish I knew more about Intel CC design to be able to answer that :| Doesn't the VM issue the ATC flush command regardless? How does it know it has a working ATC but does not need to flush it? > anyway this is driver specific contract. I don't see a need to keep > it consistent for all. Given that ARM and AMD need this and would have serious bugs if it didn't work this way I'm mildly concerned that Intel will be missing something here.. To my mind it seems like this is just a hold over from the prior design. Jason