Received: by 2002:a05:7412:419a:b0:f3:1519:9f41 with SMTP id i26csp4261794rdh; Tue, 28 Nov 2023 17:09:32 -0800 (PST) X-Google-Smtp-Source: AGHT+IF0J53cQ2M1/xBOWfCjygBI+256bo0Oil3QcyHGc0WFic1+zMQuGnzDjEYgyMfreUYTRuud X-Received: by 2002:a05:6808:201c:b0:3b8:4e27:9f49 with SMTP id q28-20020a056808201c00b003b84e279f49mr21390334oiw.12.1701220172280; Tue, 28 Nov 2023 17:09:32 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1701220172; cv=pass; d=google.com; s=arc-20160816; b=rTrwVYxfWGtH/B5QBrtMs7nYGUXkZy0RUN6OhM68vu1Lh4oWYbHpZY+/ABRJTo44Ov iHPEjaVHf7ziZH/i4tncgCIMv9rYVs2XdzrfcUt/volpUsFPHtMFgY8xDyNjpHzAc8xX jrEb5NtO1Nr7N0tIPxNior84vDMRrnXK1E/B/fHz0CDWg1WXyMyCWMVlZ5e4xwu56JKB 4albla6f2EkhchsSXjA/6TqDVUKTkDzPdFLpjHr2okrMFsFU9CO6EnzMtaqahCWRFQkJ 4fhRJ8eo/GAuUh15bWSskZVr6KU5YVZqJ+Ah3Je6MyxJ4j9WklwuOjWqanfYW/EUp/oJ 7HFg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=1VcbSpZNwbf+MqsbiooakwKrVz1RyM9P0afEb+C70bI=; fh=e+heDyPhC8R09C2aNoU4NskwSXEQ+su5qIjwJ6N1S8c=; b=qFHC6PhSOZqYQJupRIKP+lYuY/KxhCrvBETQTAgLnaT96KKs68m40c5lyF3aHppSUJ xRpaPo4u4oba/tO0u2JSLzcerMAoDM3tKjbidj/R/E7UgU+rXY83oGFBHoNeG91ZQHZ9 v7u0AJGa4MAWq9lYvJtXDEhy99MGV4hImexZu5jL23USRelOsKV1odVsTLYWgOeo4ITW HtBpnukrUiW+pw6emQfp5ml5rcN35YRTzvYbTk911huhHY8uL1p5StpqAYQ29mkPjiF3 BK1XRs2vyYBNYOrYhVJ7y61FtLdH7L2eorU2E2/6lH+DL6wZTxcwbsg74NphoI00N4T+ GHUg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b=rug1vOIc; arc=pass (i=1 spf=pass spfdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 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 morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id bo7-20020a056a02038700b005c2201d6a57si14209282pgb.283.2023.11.28.17.09.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Nov 2023 17:09:32 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@Nvidia.com header.s=selector2 header.b=rug1vOIc; arc=pass (i=1 spf=pass spfdomain=nvidia.com dmarc=pass fromdomain=nvidia.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 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 morse.vger.email (Postfix) with ESMTP id A91CC82072DC; Tue, 28 Nov 2023 17:09:29 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229880AbjK2BJQ (ORCPT + 99 others); Tue, 28 Nov 2023 20:09:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56028 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229526AbjK2BJP (ORCPT ); Tue, 28 Nov 2023 20:09:15 -0500 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2071.outbound.protection.outlook.com [40.107.92.71]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 27B771727; Tue, 28 Nov 2023 17:09:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eve9OURn+hvFXpmyFbc2arotiKecZZ6fsybHNeWtcbkYpZi8gRgL+paBOmeW7YtTzhgJlUfDsqGmTnZQEMdq80v0yVt7zJ0hraRqTahXS71cPp43WkHnAdZudMua5GCLR5GeOuHXjzYZtA4ZHNYNGZvfsVFejtoN2t3JU/51Alx8HKgQC1b7KsCKj6lJNG2Wj2S2E2OXPbisqy0TgJ23rNjKOwor2wLkxw57+jB/ksnTD3rVSF8VNlnmysKiou19CLJt7zaW8B207BVyrh1VrJUStIwV9upAOVDbr/YTu9fYigU3+8gzol6VXOS+VIGvjND3gwUfzwGYnDkE+aB8zQ== 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=1VcbSpZNwbf+MqsbiooakwKrVz1RyM9P0afEb+C70bI=; b=ioqWFn+UxVve8p/Ib7iU5VWHbsJmi6drd0NlAHAYxKlDrp/89kvrYUp0fmIA0iJi7qlfNkWXvIhRI5VokzDuxeGAaVUuXkMAmjK9zXNIwW4j9nLJoxDPnU5Rv05hBAc5ecu+wrT/sHfgTKISPPTBXE30zGZaiv/JDuqczCWNesTrcR+gfMbq1wIjtdi2K6R+szFX3/b11pb+lco/8suSskz/v4J3eis9JGSQojkMWBEboop+9x6G2vBe92Vg3yEjq5VS+J+kqqDNEMVBbJHiU4I8KEBI/Fi1xCBKilbPnLujvtZ9y8HTQ33q8WC3tR1cE9ZDkLYyhrEu6z3ShArwHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.233) smtp.rcpttodomain=oracle.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) 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=1VcbSpZNwbf+MqsbiooakwKrVz1RyM9P0afEb+C70bI=; b=rug1vOIckXhUfGItjv5g9lTR8E2cDwU+qCAE1GShacNybvBcVSS9YwVtXS2J86ks1mU2I2NVCPNJ7REz+xEHQS1BIJjijshxp7q8RCG3dOZ/mzKGye9zNBFox3jh14TZz+mPTl8JILcVjyVBBvWG7zkbCJA/vUdqsakZMrVDpwqefLWIt9KHd3fjWBFQWSkiJxSYkfY/6ZxdbDBF/B12SWXDxIGHrZpLaQqUhLqBL57dauQElbHsr3xfF5abvl6b8PBs2rlF+mS84lzbDcEBexxOuYdp9xduCYdjtSGtA+CXlEDUt0HSLnkFN5eQOOH8cEBx9HkqvSsLBb6IIP5uqA== Received: from SJ0PR05CA0017.namprd05.prod.outlook.com (2603:10b6:a03:33b::22) by LV2PR12MB5846.namprd12.prod.outlook.com (2603:10b6:408:175::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.29; Wed, 29 Nov 2023 01:09:19 +0000 Received: from CO1PEPF000044F0.namprd05.prod.outlook.com (2603:10b6:a03:33b:cafe::16) by SJ0PR05CA0017.outlook.office365.com (2603:10b6:a03:33b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.22 via Frontend Transport; Wed, 29 Nov 2023 01:09:18 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.233) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.118.233 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.233; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.233) by CO1PEPF000044F0.mail.protection.outlook.com (10.167.241.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.17 via Frontend Transport; Wed, 29 Nov 2023 01:09:18 +0000 Received: from drhqmail202.nvidia.com (10.126.190.181) by mail.nvidia.com (10.127.129.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Tue, 28 Nov 2023 17:09:10 -0800 Received: from drhqmail201.nvidia.com (10.126.190.180) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Tue, 28 Nov 2023 17:09:09 -0800 Received: from Asurada-Nvidia (10.127.8.12) by mail.nvidia.com (10.126.190.180) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41 via Frontend Transport; Tue, 28 Nov 2023 17:09:08 -0800 Date: Tue, 28 Nov 2023 17:09:07 -0800 From: Nicolin Chen To: Jason Gunthorpe CC: "Tian, Kevin" , "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" , "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 v6 2/6] iommufd: Add IOMMU_HWPT_INVALIDATE Message-ID: References: <20231129005715.GS436702@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20231129005715.GS436702@nvidia.com> X-NV-OnPremToCloud: ExternallySecured X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PEPF000044F0:EE_|LV2PR12MB5846:EE_ X-MS-Office365-Filtering-Correlation-Id: c8f7232a-6f4d-47e6-31ef-08dbf077d018 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3PvO6Gt7U02z31q3flqnIVRg23R607lv378JqE2I93Z14rUvFyRezFZnmkOI+GIU6WX7nMbOXWNUGsnOEE3HE9GbjzMG5Kw610hzhCNFfD9SarSZB4uwMCOYpN+wDddz98t0ZBLPQBeOVQXtOpEuq/CJNa1Nq6Q3bNZhhwxBtSdxnsOWY2Mn3n8UR8GelaADaqPRXXiMqUK5tX9EyxTb7G+5Ui40wor22x7WwZ5cTUrj/JNNmdfiBA2u7TJMpxb5nxOESKShGoO15h1FstsMr/xqkSoATIsHkr8/a9HW0I0jubCMYaXs+dsIrEjEWIs/VlC6ogkZsEqzsq03dGYcnkNts67f14i6+2p/s2UbgGQJ9Z3mLkz4wQmeOIc0cjV39Sg6I4Ru92vebZRQ9urVbhfQ0kDaInf1WQDX9VJQqVCiv7lHahdkFex+xLHwTmNNvStBWE884kZcbhr3usdbb1uDXZrnPCwCGUDOszc/KSa829zVJqrbTVfN8n9Ajv3daN5MYFN0Hd5ENuqf/FhBLW6ML4ZgdYjcu3K7k9hGt8WjLZB4Y03zwJ4mse+BKV6KfQsPxHaKY1KxuA35ox/D8GIl2KQIUX6hXDHw7jv4/AqMjWLqLNEXciX0aiawM6kBy/vIpsf5t+w/3Un4b79A2vX+ttHCmVh4wtTwr7R/tGLiAL9DjrKtyQ1tMaxY2tE50XJWCpFmIwwRNeVQGdCbwoeaIyHaZEp2QvXVx87vNZwNMNgsVzuz60iL9KHDqcNN X-Forefront-Antispam-Report: CIP:216.228.118.233;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc7edge2.nvidia.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(346002)(136003)(376002)(230922051799003)(451199024)(186009)(82310400011)(64100799003)(1800799012)(36840700001)(46966006)(40470700004)(316002)(6636002)(336012)(426003)(9686003)(86362001)(26005)(70206006)(70586007)(47076005)(478600001)(36860700001)(83380400001)(82740400003)(7636003)(356005)(40460700003)(54906003)(7416002)(5660300002)(2906002)(55016003)(6862004)(41300700001)(33716001)(4326008)(8676002)(8936002)(40480700001);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Nov 2023 01:09:18.5296 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c8f7232a-6f4d-47e6-31ef-08dbf077d018 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.118.233];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CO1PEPF000044F0.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5846 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 morse.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 (morse.vger.email [0.0.0.0]); Tue, 28 Nov 2023 17:09:29 -0800 (PST) On Tue, Nov 28, 2023 at 08:57:15PM -0400, Jason Gunthorpe wrote: > On Tue, Nov 28, 2023 at 04:51:21PM -0800, Nicolin Chen wrote: > > > > I also thought about making this out_driver_error_code per HW. > > > > Yet, an error can be either per array or per entry/quest. The > > > > array-related error should be reported in the array structure > > > > that is a core uAPI, v.s. the per-HW entry structure. Though > > > > we could still report an array error in the entry structure > > > > at the first entry (or indexed by "array->entry_num")? > > > > > > > > > > why would there be an array error? array is just a software > > > entity containing actual HW invalidation cmds. If there is > > > any error with the array itself it should be reported via > > > ioctl errno. > > > > User array reading is a software operation, but kernel array > > reading is a hardware operation that can raise an error when > > the memory location to the array is incorrect or so. > > Well, we shouldn't get into a situation like that.. By the time the HW > got the address it should be valid. Oh, that's true. I was trying to say that out_driver_error_code was to mimic such a queue validation for user space if an error happens to the array. > > With that being said, I think errno (-EIO) could do the job, > > as you suggested too. > > Do we have any idea what HW failures can be generated by the commands > this will execture? IIRC I don't remember seeing any smmu specific > codes related to invalid invalidation? Everything is a valid input? "7.1 Command queue errors" has the info. Thanks Nic