Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1785765imm; Thu, 2 Aug 2018 00:37:27 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeKYtPzzWI20+UNibcwDHgprz1BvWEGsYRp5CEV4XfoC4HdTbmfJcsUmJ/RWbqYAWhoDdCg X-Received: by 2002:a63:de4c:: with SMTP id y12-v6mr467068pgi.435.1533195447491; Thu, 02 Aug 2018 00:37:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533195447; cv=none; d=google.com; s=arc-20160816; b=N6fRAdQr8E2fm3VRqzxpJ5C5o07XCkyjXdB4F+vB84q8wlF4QHCTstfQ9QLqsSi9zt jXbda/bYHlwXh2rei1hhIxS7ZTLPyLzevv4bqGszZRH8imwyTgeFRaEzID11exoEb+LG zs0ovpA1sEUGmR3Y6dqRfXYqDeAjHlo3gw2eIhAvtyRxx7Xy53iEzcfcbzVkcqUWxmVW xQu3FvcPuYM1P2lyIJQ00Cfm+2G9OseNiTXuSyjlO6R8Hv5ylicpauNILXNcmBCrmZNF Q7oSN8/ZKewAJIkdVTc5YIjkxOJ9eR7hWonPcvkK5uAa0+2xCf87Pc2zZbQT6jyWT/w5 tSOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date :arc-authentication-results; bh=VVjLPmrmf4Bk61TJTX17dW9Aevy6ecuhtNKH69ZLcb0=; b=rWcpix+meE3y7v5b3O0QVJ0nzA9uDUgz0urm756iPMhP+97Yy1NynJxcfr5Ukyn+u/ L4736bYlF1tQtVP6XNOj2EybWtTudaCJEuis9cJl59uLjqQ/Z5rM80TwYiP4DXymg+Pa ih/yJwB3xFQWvX6ostIzPR7eZZ2lPc+U/3k+RX/1U3CQXOp0XItmKbYRVQQEe41Sfdpm UE27uRJEwCqrA7a8VVLd79PrceVjw7+PbObFLovXGWjLo2SpJkJj4VzKIE2DJNFuNZS2 P6O89xzi9RlHyzV81GeuDcJnqERAb2Zb/fW3r5bs15241g4aE1aDhnz2fEC89okVbI1d Roqg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t135-v6si1449691pfc.139.2018.08.02.00.37.13; Thu, 02 Aug 2018 00:37:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726989AbeHBJ0E (ORCPT + 99 others); Thu, 2 Aug 2018 05:26:04 -0400 Received: from szxga06-in.huawei.com ([45.249.212.32]:55647 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726144AbeHBJ0E (ORCPT ); Thu, 2 Aug 2018 05:26:04 -0400 Received: from DGGEMS403-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 990301EDCCE92; Thu, 2 Aug 2018 15:36:08 +0800 (CST) Received: from localhost (10.67.212.75) by DGGEMS403-HUB.china.huawei.com (10.3.19.203) with Microsoft SMTP Server (TLS) id 14.3.399.0; Thu, 2 Aug 2018 15:35:59 +0800 Date: Thu, 2 Aug 2018 15:34:40 +0800 From: Kenneth Lee To: "Tian, Kevin" CC: Kenneth Lee , Jonathan Corbet , Herbert Xu , "David S . Miller" , Joerg Roedel , Alex Williamson , Hao Fang , Zhou Wang , Zaibo Xu , Philippe Ombredanne , Greg Kroah-Hartman , Thomas Gleixner , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-crypto@vger.kernel.org" , "iommu@lists.linux-foundation.org" , "kvm@vger.kernel.org" , "linux-accelerators@lists.ozlabs.org" , Lu Baolu , "Kumar, Sanjay K" , "linuxarm@huawei.com" Subject: Re: [RFC PATCH 3/7] vfio: add spimdev support Message-ID: <20180802073440.GA91035@Turing-Arch-b> References: <20180801102221.5308-1-nek.in.cn@gmail.com> <20180801102221.5308-4-nek.in.cn@gmail.com> <20180802034727.GK160746@Turing-Arch-b> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Originating-IP: [10.67.212.75] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Aug 02, 2018 at 04:24:22AM +0000, Tian, Kevin wrote: > Date: Thu, 2 Aug 2018 04:24:22 +0000 > From: "Tian, Kevin" > To: Kenneth Lee > CC: Kenneth Lee , Jonathan Corbet , > Herbert Xu , "David S . Miller" > , Joerg Roedel , Alex Williamson > , Hao Fang , Zhou Wang > , Zaibo Xu , Philippe > Ombredanne , Greg Kroah-Hartman > , Thomas Gleixner , > "linux-doc@vger.kernel.org" , > "linux-kernel@vger.kernel.org" , > "linux-crypto@vger.kernel.org" , > "iommu@lists.linux-foundation.org" , > "kvm@vger.kernel.org" , > "linux-accelerators@lists.ozlabs.org" > , Lu Baolu > , "Kumar, Sanjay K" , > "linuxarm@huawei.com" > Subject: RE: [RFC PATCH 3/7] vfio: add spimdev support > Message-ID: > > > From: Kenneth Lee [mailto:liguozhu@hisilicon.com] > > Sent: Thursday, August 2, 2018 11:47 AM > > > > > > > > > From: Kenneth Lee > > > > Sent: Wednesday, August 1, 2018 6:22 PM > > > > > > > > From: Kenneth Lee > > > > > > > > SPIMDEV is "Share Parent IOMMU Mdev". It is a vfio-mdev. But differ > > from > > > > the general vfio-mdev: > > > > > > > > 1. It shares its parent's IOMMU. > > > > 2. There is no hardware resource attached to the mdev is created. The > > > > hardware resource (A `queue') is allocated only when the mdev is > > > > opened. > > > > > > Alex has concern on doing so, as pointed out in: > > > > > > https://www.spinics.net/lists/kvm/msg172652.html > > > > > > resource allocation should be reserved at creation time. > > > > Yes. That is why I keep telling that SPIMDEV is not for "VM", it is for "many > > processes", it is just an access point to the process. Not a device to VM. I > > hope > > Alex can accept it:) > > > > VFIO is just about assigning device resource to user space. It doesn't care > whether it's native processes or VM using the device so far. Along the direction > which you described, looks VFIO needs to support the configuration that > some mdevs are used for native process only, while others can be used > for both native and VM. I'm not sure whether there is a clean way to > enforce it... I had the same idea at the beginning. But finally I found that the life cycle of the virtual device for VM and process were different. Consider you create some mdevs for VM use, you will give all those mdevs to lib-virt, which distribute those mdev to VMs or containers. If the VM or container exits, the mdev is returned to the lib-virt and used for next allocation. It is the administrator who controlled every mdev's allocation. But for process, it is different. There is no lib-virt in control. The administrator's intension is to grant some type of application to access the hardware. The application can get a handle of the hardware, send request and get the result. That's all. He/She dose not care which mdev is allocated to that application. If it crashes, it should be the kernel's responsibility to withdraw the resource, the system administrator does not want to do it by hand. > > Let's hear from Alex's thought. Sure:) > > Thanks > Kevin -- -Kenneth(Hisilicon) ================================================================================ 本邮件及其附件含有华为公司的保密信息,仅限于发送给上面地址中列出的个人或群组。禁 止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制、或散发)本邮件中 的信息。如果您错收了本邮件,请您立即电话或邮件通知发件人并删除本邮件! This e-mail and its attachments contain confidential information from HUAWEI, which is intended only for the person or entity whose address is listed above. Any use of the information contained herein in any way (including, but not limited to, total or partial disclosure, reproduction, or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this e-mail in error, please notify the sender by phone or email immediately and delete it!