From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.9 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 75928C47083 for ; Wed, 2 Jun 2021 08:57:32 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5B072613D6 for ; Wed, 2 Jun 2021 08:57:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232967AbhFBI7J (ORCPT ); Wed, 2 Jun 2021 04:59:09 -0400 Received: from mout.kundenserver.de ([212.227.126.133]:45869 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231462AbhFBI7I (ORCPT ); Wed, 2 Jun 2021 04:59:08 -0400 Received: from [192.168.1.155] ([95.114.42.59]) by mrelayeu.kundenserver.de (mreue009 [212.227.15.167]) with ESMTPSA (Nemesis) id 1MGi6k-1lafIq3Oew-00DpdX; Wed, 02 Jun 2021 10:56:54 +0200 Subject: Re: [RFC] /dev/ioasid uAPI proposal To: "Tian, Kevin" , LKML , Joerg Roedel , Jason Gunthorpe , Lu Baolu , David Woodhouse , "iommu@lists.linux-foundation.org" , "kvm@vger.kernel.org" , "Alex Williamson (alex.williamson@redhat.com)" , Jason Wang Cc: Eric Auger , Jonathan Corbet , "Raj, Ashok" , "Liu, Yi L" , "Wu, Hao" , "Jiang, Dave" , Jacob Pan , Jean-Philippe Brucker , David Gibson , Kirti Wankhede , Robin Murphy References: From: "Enrico Weigelt, metux IT consult" Message-ID: Date: Wed, 2 Jun 2021 10:56:48 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: tl Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K1:3Mcq2cb/Ii9ywxMSUXsDQ9pb2+iZexTll119bJZkqKn6n/uAzeX vlBuy8gzAJoHwUTbHF/NioLbLGK4SyvZhqUm5yg9cGiQY7V3evXE44KhVXzMiMGt4/Cf+0t hvumRBsesWj4xZHsQkSA4vYDmw15qUKwS9PxlgOBBhlXZjg4HB0b/+dgqTxrCfE6CEVuKRJ 5GqKWS9lwAjodld6KcrWg== X-UI-Out-Filterresults: notjunk:1;V03:K0:3T0vIilwMWM=:yox9K5pXkfYHqVr3zyrSGk pGHofGYSVKITUO56tzDTQQeMUlqiezJiY1iU1N2g8mBSjXRkRt+qit8y3/H+qDaEx6FWUD+T8 2zxEo4s6fiqhOyQpOf/+BHispEZ03VAeISfUlEJKfkbx0+WjuNHEgeVRxX87ighdQNSgPyiqe PILXaXDH1s/q3xSA1qZxtRc+TXuVzZSyj1Ao92QnuDLbX4EbtQ319zNW1yhF4uuC7l+1bSrac IWdfwXu73ZKzhJCNW4czH/r58AyDTa/vELP2yx2cqMoHiRyhuxLlQtM+EBL3qmroRYzGoYeC9 oemgnJQKz8baqNs8M8Co5+2EPoSuDqCqpyEAwBU8g1itzuGflXO0f+KsrSjHAnUqF5/0/x3vI cqqFbSmyhFiO5UfQcV1zRJpzELKcdxjFCEZYPk9TPz09cIbdBOVqURnwMRB0ODmBHJanmCKKH XHmd3gq/QOWATPJVNXYOtnsgmxwIYMdMShNnrfKWSNKuj4YMT0R7JH2ZVa1B/zNfJrgZqwnUo GLmx9XbSg7JKS6nsTmdDqY= Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 27.05.21 09:58, Tian, Kevin wrote: Hi, > /dev/ioasid provides an unified interface for managing I/O page tables for > devices assigned to userspace. Device passthrough frameworks (VFIO, vDPA, > etc.) are expected to use this interface instead of creating their own logic to > isolate untrusted device DMAs initiated by userspace. While I'm in favour of having generic APIs for generic tasks, as well as using FDs, I wonder whether it has to be a new and separate device. Now applications have to use multiple APIs in lockstep. One consequence of that is operators, as well as provisioning systems, container infrastructures, etc, always have to consider multiple devices together. You can't just say "give workload XY access to device /dev/foo" anymore. Now you have to take care about scenarios like "if someone wants /dev/foo, he also needs /dev/bar"). And if that happens multiple times together ("/dev/foo and /dev/wurst, both require /dev/bar), leading to scenarios like the dev nodes are bind-mounted somewhere, you need to take care that additional devices aren't bind-mounted twice, etc ... If I understand this correctly, /dev/ioasid is a kind of "common supplier" to other APIs / devices. Why can't the fd be acquired by the consumer APIs (eg. kvm, vfio, etc) ? --mtx -- --- Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren GPG/PGP-Schlüssel zu. --- Enrico Weigelt, metux IT consult Free software and Linux embedded engineering info@metux.net -- +49-151-27565287 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.9 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 32A84C47093 for ; Wed, 2 Jun 2021 08:58:22 +0000 (UTC) Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E75AC613D6 for ; Wed, 2 Jun 2021 08:58:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E75AC613D6 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=metux.net Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=iommu-bounces@lists.linux-foundation.org Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id B261F400FE; Wed, 2 Jun 2021 08:58:21 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4LxO-69M39qX; Wed, 2 Jun 2021 08:58:17 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [IPv6:2605:bc80:3010:104::8cd3:938]) by smtp2.osuosl.org (Postfix) with ESMTP id 1C6CD4022B; Wed, 2 Jun 2021 08:58:17 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 967F7C0025; Wed, 2 Jun 2021 08:58:16 +0000 (UTC) Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 86D72C0001 for ; Wed, 2 Jun 2021 08:57:32 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 68A6082F0F for ; Wed, 2 Jun 2021 08:57:32 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id L6U45Rf7DgA6 for ; Wed, 2 Jun 2021 08:57:28 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.8.0 Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.126.133]) by smtp1.osuosl.org (Postfix) with ESMTPS id 0534A836A7 for ; Wed, 2 Jun 2021 08:57:27 +0000 (UTC) Received: from [192.168.1.155] ([95.114.42.59]) by mrelayeu.kundenserver.de (mreue009 [212.227.15.167]) with ESMTPSA (Nemesis) id 1MGi6k-1lafIq3Oew-00DpdX; Wed, 02 Jun 2021 10:56:54 +0200 Subject: Re: [RFC] /dev/ioasid uAPI proposal To: "Tian, Kevin" , LKML , Joerg Roedel , Jason Gunthorpe , Lu Baolu , David Woodhouse , "iommu@lists.linux-foundation.org" , "kvm@vger.kernel.org" , "Alex Williamson (alex.williamson@redhat.com)" , Jason Wang References: From: "Enrico Weigelt, metux IT consult" Message-ID: Date: Wed, 2 Jun 2021 10:56:48 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: Content-Language: tl X-Provags-ID: V03:K1:3Mcq2cb/Ii9ywxMSUXsDQ9pb2+iZexTll119bJZkqKn6n/uAzeX vlBuy8gzAJoHwUTbHF/NioLbLGK4SyvZhqUm5yg9cGiQY7V3evXE44KhVXzMiMGt4/Cf+0t hvumRBsesWj4xZHsQkSA4vYDmw15qUKwS9PxlgOBBhlXZjg4HB0b/+dgqTxrCfE6CEVuKRJ 5GqKWS9lwAjodld6KcrWg== X-UI-Out-Filterresults: notjunk:1;V03:K0:3T0vIilwMWM=:yox9K5pXkfYHqVr3zyrSGk pGHofGYSVKITUO56tzDTQQeMUlqiezJiY1iU1N2g8mBSjXRkRt+qit8y3/H+qDaEx6FWUD+T8 2zxEo4s6fiqhOyQpOf/+BHispEZ03VAeISfUlEJKfkbx0+WjuNHEgeVRxX87ighdQNSgPyiqe PILXaXDH1s/q3xSA1qZxtRc+TXuVzZSyj1Ao92QnuDLbX4EbtQ319zNW1yhF4uuC7l+1bSrac IWdfwXu73ZKzhJCNW4czH/r58AyDTa/vELP2yx2cqMoHiRyhuxLlQtM+EBL3qmroRYzGoYeC9 oemgnJQKz8baqNs8M8Co5+2EPoSuDqCqpyEAwBU8g1itzuGflXO0f+KsrSjHAnUqF5/0/x3vI cqqFbSmyhFiO5UfQcV1zRJpzELKcdxjFCEZYPk9TPz09cIbdBOVqURnwMRB0ODmBHJanmCKKH XHmd3gq/QOWATPJVNXYOtnsgmxwIYMdMShNnrfKWSNKuj4YMT0R7JH2ZVa1B/zNfJrgZqwnUo GLmx9XbSg7JKS6nsTmdDqY= X-Mailman-Approved-At: Wed, 02 Jun 2021 08:58:15 +0000 Cc: Jean-Philippe Brucker , "Jiang, Dave" , "Raj, Ashok" , Jonathan Corbet , Kirti Wankhede , David Gibson , Robin Murphy X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: iommu-bounces@lists.linux-foundation.org Sender: "iommu" T24gMjcuMDUuMjEgMDk6NTgsIFRpYW4sIEtldmluIHdyb3RlOgoKSGksCgo+IC9kZXYvaW9hc2lk IHByb3ZpZGVzIGFuIHVuaWZpZWQgaW50ZXJmYWNlIGZvciBtYW5hZ2luZyBJL08gcGFnZSB0YWJs ZXMgZm9yCj4gZGV2aWNlcyBhc3NpZ25lZCB0byB1c2Vyc3BhY2UuIERldmljZSBwYXNzdGhyb3Vn aCBmcmFtZXdvcmtzIChWRklPLCB2RFBBLAo+IGV0Yy4pIGFyZSBleHBlY3RlZCB0byB1c2UgdGhp cyBpbnRlcmZhY2UgaW5zdGVhZCBvZiBjcmVhdGluZyB0aGVpciBvd24gbG9naWMgdG8KPiBpc29s YXRlIHVudHJ1c3RlZCBkZXZpY2UgRE1BcyBpbml0aWF0ZWQgYnkgdXNlcnNwYWNlLgoKV2hpbGUg SSdtIGluIGZhdm91ciBvZiBoYXZpbmcgZ2VuZXJpYyBBUElzIGZvciBnZW5lcmljIHRhc2tzLCBh cyB3ZWxsIGFzCnVzaW5nIEZEcywgSSB3b25kZXIgd2hldGhlciBpdCBoYXMgdG8gYmUgYSBuZXcg YW5kIHNlcGFyYXRlIGRldmljZS4KCk5vdyBhcHBsaWNhdGlvbnMgaGF2ZSB0byB1c2UgbXVsdGlw bGUgQVBJcyBpbiBsb2Nrc3RlcC4gT25lIGNvbnNlcXVlbmNlCm9mIHRoYXQgaXMgb3BlcmF0b3Jz LCBhcyB3ZWxsIGFzIHByb3Zpc2lvbmluZyBzeXN0ZW1zLCBjb250YWluZXIKaW5mcmFzdHJ1Y3R1 cmVzLCBldGMsIGFsd2F5cyBoYXZlIHRvIGNvbnNpZGVyIG11bHRpcGxlIGRldmljZXMgdG9nZXRo ZXIuCgpZb3UgY2FuJ3QganVzdCBzYXkgImdpdmUgd29ya2xvYWQgWFkgYWNjZXNzIHRvIGRldmlj ZSAvZGV2L2ZvbyIgYW55bW9yZS4KTm93IHlvdSBoYXZlIHRvIHRha2UgY2FyZSBhYm91dCBzY2Vu YXJpb3MgbGlrZSAiaWYgc29tZW9uZSB3YW50cwovZGV2L2ZvbywgaGUgYWxzbyBuZWVkcyAvZGV2 L2JhciIpLiBBbmQgaWYgdGhhdCBoYXBwZW5zIG11bHRpcGxlIHRpbWVzCnRvZ2V0aGVyICgiL2Rl di9mb28gYW5kIC9kZXYvd3Vyc3QsIGJvdGggcmVxdWlyZSAvZGV2L2JhciksIGxlYWRpbmcgdG8K c2NlbmFyaW9zIGxpa2UgdGhlIGRldiBub2RlcyBhcmUgYmluZC1tb3VudGVkIHNvbWV3aGVyZSwg eW91IG5lZWQgdG8KdGFrZSBjYXJlIHRoYXQgYWRkaXRpb25hbCBkZXZpY2VzIGFyZW4ndCBiaW5k LW1vdW50ZWQgdHdpY2UsIGV0YyAuLi4KCklmIEkgdW5kZXJzdGFuZCB0aGlzIGNvcnJlY3RseSwg L2Rldi9pb2FzaWQgaXMgYSBraW5kIG9mICJjb21tb24gCnN1cHBsaWVyIiB0byBvdGhlciBBUElz IC8gZGV2aWNlcy4gV2h5IGNhbid0IHRoZSBmZCBiZSBhY3F1aXJlZCBieSB0aGUKY29uc3VtZXIg QVBJcyAoZWcuIGt2bSwgdmZpbywgZXRjKSA/CgoKLS1tdHgKCi0tIAotLS0KSGlud2VpczogdW52 ZXJzY2hsw7xzc2VsdGUgRS1NYWlscyBrw7ZubmVuIGxlaWNodCBhYmdlaMO2cnQgdW5kIG1hbmlw dWxpZXJ0CndlcmRlbiAhIEbDvHIgZWluZSB2ZXJ0cmF1bGljaGUgS29tbXVuaWthdGlvbiBzZW5k ZW4gU2llIGJpdHRlIGlocmVuCkdQRy9QR1AtU2NobMO8c3NlbCB6dS4KLS0tCkVucmljbyBXZWln ZWx0LCBtZXR1eCBJVCBjb25zdWx0CkZyZWUgc29mdHdhcmUgYW5kIExpbnV4IGVtYmVkZGVkIGVu Z2luZWVyaW5nCmluZm9AbWV0dXgubmV0IC0tICs0OS0xNTEtMjc1NjUyODcKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaW9tbXUgbWFpbGluZyBsaXN0Cmlv bW11QGxpc3RzLmxpbnV4LWZvdW5kYXRpb24ub3JnCmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0 aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lvbW11