Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp1584411pxb; Thu, 4 Mar 2021 15:29:56 -0800 (PST) X-Google-Smtp-Source: ABdhPJxdCeFIP6KqKu25gJxJj8tLMB6UDXS215kYbBskTxbZlClA6EqIWeiodQa61kosZpz7dl4q X-Received: by 2002:aa7:cb0d:: with SMTP id s13mr6750896edt.221.1614900596458; Thu, 04 Mar 2021 15:29:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614900596; cv=none; d=google.com; s=arc-20160816; b=jOZIaZI2Yg7SLwQHv5VeBBr8mJ3lwKdJJEIrrsc62IMG9OxmzQl54CQRuQz9z9ITZT ZjO0GRnQdBBtU9jsN5fqx1b00wO4aapUnTMxjepHzLQld0xCODefld/u/tsP4HxfRqkh q8qb8XtzDbhqtXZEXSHhsmPdrzjdpK26znPYMQVNDOIuThxlLpWQSA3DLWozCfkFvoHC AEAoHzZCk8WRvRQ8bughPAKpFpXNAOky3i9iYC6UgkPtNM6LwQOsP2PZF23tWtBHiG+K woXLD8gGEWMskt+A2riBJZMc/aqeP/zvzEutm/7DVvpvsTk8RPff5LpelmsMMnrK1G6C +lnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date:ironport-sdr:ironport-sdr; bh=s7sj6VZIfPHgayToV0svfoQkO/RdDcztXSewWrueKEw=; b=iHIntAGBV4J2UtvmfwzCIJ/QZ4z30DAoqtZh+uz+Jyy0iDnQT1inGtAx3s13Zabvk9 16yrZO4g+6Nv0bkvZz8JnKxG08pZX2wmB0yvV03U7aUM0NJaBfuoASXRLNSFE0iOTV/I MH6IQ+giO3N7LyqxbM8Qu8eBXalsYZV7955iZNFYEc9Lhdo0J2NgEBh8D/JPwMT5xBiU lYjURxy6rLsD8UDDAkIec4VB6xY2ZDE50FPAqAvY8sievboAZVZ3A8L22rRMJxHnwzii zIH/xktPIlQAXKmZCsCyTKNLm75qImYSgANV4KQkFmCTYl4sbVBv3iSv06NU51qStRgn 8o2g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s21si343533ejq.101.2021.03.04.15.29.33; Thu, 04 Mar 2021 15:29:56 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1354876AbhCDAG4 (ORCPT + 99 others); Wed, 3 Mar 2021 19:06:56 -0500 Received: from mga05.intel.com ([192.55.52.43]:40969 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237335AbhCCVRK (ORCPT ); Wed, 3 Mar 2021 16:17:10 -0500 IronPort-SDR: j1K1quAxMPqOSSXqKXoCFfkbWh7b+tUA6mPo+1zL8/cC5wc4hw245lSDE0vwP+Mvfcn9ywcZTj QkFCJbpKQVng== X-IronPort-AV: E=McAfee;i="6000,8403,9912"; a="272282417" X-IronPort-AV: E=Sophos;i="5.81,220,1610438400"; d="scan'208";a="272282417" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Mar 2021 13:15:15 -0800 IronPort-SDR: 4GumHzw+bqY2IuEknONcScAZW86HiX+ue90j58IjKak+hmhbzwOuAwfFlCGtOaA4n6eEKtFaub IoJjZGUM6C9g== X-IronPort-AV: E=Sophos;i="5.81,220,1610438400"; d="scan'208";a="406603184" Received: from jacob-builder.jf.intel.com (HELO jacob-builder) ([10.7.199.155]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Mar 2021 13:15:11 -0800 Date: Wed, 3 Mar 2021 13:17:26 -0800 From: Jacob Pan To: Tejun Heo Cc: LKML , Joerg Roedel , Lu Baolu , David Woodhouse , iommu@lists.linux-foundation.org, cgroups@vger.kernel.org, Li Zefan , Johannes Weiner , Jean-Philippe Brucker , Alex Williamson , Eric Auger , Jason Gunthorpe , Jonathan Corbet , Raj Ashok , "Tian, Kevin" , Yi Liu , Wu Hao , Dave Jiang , jacob.jun.pan@linux.intel.com Subject: Re: [RFC PATCH 15/18] cgroup: Introduce ioasids controller Message-ID: <20210303131726.7a8cb169@jacob-builder> In-Reply-To: References: <1614463286-97618-1-git-send-email-jacob.jun.pan@linux.intel.com> <1614463286-97618-16-git-send-email-jacob.jun.pan@linux.intel.com> Organization: OTC X-Mailer: Claws Mail 3.17.5 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Tejun, On Wed, 3 Mar 2021 10:44:28 -0500, Tejun Heo wrote: > On Sat, Feb 27, 2021 at 02:01:23PM -0800, Jacob Pan wrote: > > IOASIDs are used to associate DMA requests with virtual address spaces. > > They are a system-wide limited resource made available to the userspace > > applications. Let it be VMs or user-space device drivers. > > > > This RFC patch introduces a cgroup controller to address the following > > problems: > > 1. Some user applications exhaust all the available IOASIDs thus > > depriving others of the same host. > > 2. System admins need to provision VMs based on their needs for IOASIDs, > > e.g. the number of VMs with assigned devices that perform DMA requests > > with PASID. > > Please take a look at the proposed misc controller: > > http://lkml.kernel.org/r/20210302081705.1990283-2-vipinsh@google.com > > Would that fit your bill? The interface definitely can be reused. But IOASID has a different behavior in terms of migration and ownership checking. I guess SEV key IDs are not tied to a process whereas IOASIDs are. Perhaps this can be solved by adding + .can_attach = ioasids_can_attach, + .cancel_attach = ioasids_cancel_attach, Let me give it a try and come back. Thanks for the pointer. Jacob > > Thanks. > Thanks, Jacob