Received: by 10.223.185.116 with SMTP id b49csp8322051wrg; Thu, 1 Mar 2018 22:56:49 -0800 (PST) X-Google-Smtp-Source: AG47ELuWXvXoZwLQ4UHlL52BlDE0CUFm/nx+UdbELyxcmiGlHdr10ji/g/2moelfrvvAzLLNykvm X-Received: by 10.98.100.69 with SMTP id y66mr4495292pfb.111.1519973809220; Thu, 01 Mar 2018 22:56:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519973809; cv=none; d=google.com; s=arc-20160816; b=pQlUTaIRRNfmI2ivzE2WgQZvQDCfui74Fl/AFYwJGto6+BIgaT6qGpnE/hNA7iU4gO GcQirFXVq4Wqa56ZJWWPSe3QTAetHPdYvvJ7PKc6/WrqhnL+0ACYzLkyAWDiZoHx1rcc Uh3VuiIlI0OjMqwWtiZU54hGqdNkyeuPN6bcizf0dlX4AQyUt12f/cb9etbjgAuGBJFt 4u9e3JFLA4ObZtUjGI/FoE3/QjnKi9r0WKnQuVNIgKOHwqwDpM9zWLWZY5haABQ4m5hp wh6bjKQr3IbB/+Gz9fT8oJgwdWqzoQFdpsxcbuDF2TVy/3U7I8DvP4BXqus9e/j1KnCr TfPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :dlp-reaction:dlp-version:dlp-product:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:arc-authentication-results; bh=mFPOaJxNpcK68JXdj7hq0iEQ4VqOoQUClfGetFshIT4=; b=fg7yJbhkLi6BT7kdOyskTFZXWYrVHYu7iyovAywEM1v6XCXjuazFh2WIb/j9pvQ9jV UAj/llEztXzcej6FAkLzuk3z2eoHjtGyojBxZZVd+CYamCJfI1AWl9MJMawNSnOPcwI4 4SX6iqFNUMTUC7eo9n+RPkfJi+tz6/pUZDa9YEFdZB8/dEFLitgVLahSb6ti6dv1+2Tf FZrKFUFeXunThU42N6KS07vjUw9aIy4G/a7zzwuIN9ehuPsrWnoJzkmyTdwmjMQUV3YZ Bo8zcOd9pGuOIUFJtvIZhXzcYO2zxHSqHu83DNzfUUlK79oXuvIiA+FIZb+gk0hiPIoT ZcSw== 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 a25si3582541pgn.429.2018.03.01.22.56.34; Thu, 01 Mar 2018 22:56:49 -0800 (PST) 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 S936112AbeCBGzx convert rfc822-to-8bit (ORCPT + 99 others); Fri, 2 Mar 2018 01:55:53 -0500 Received: from mga01.intel.com ([192.55.52.88]:26005 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935863AbeCBGzt (ORCPT ); Fri, 2 Mar 2018 01:55:49 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Mar 2018 22:55:49 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,411,1515484800"; d="scan'208";a="31848745" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by orsmga003.jf.intel.com with ESMTP; 01 Mar 2018 22:55:48 -0800 Received: from fmsmsx101.amr.corp.intel.com (10.18.124.199) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 1 Mar 2018 22:55:48 -0800 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by fmsmsx101.amr.corp.intel.com (10.18.124.199) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 1 Mar 2018 22:55:47 -0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.253]) by shsmsx102.ccr.corp.intel.com ([169.254.2.124]) with mapi id 14.03.0319.002; Fri, 2 Mar 2018 14:55:45 +0800 From: "Tian, Kevin" To: 'Alex Williamson' , Alexander Duyck CC: Bjorn Helgaas , "linux-pci@vger.kernel.org" , "Duyck, Alexander H" , "virtio-dev@lists.oasis-open.org" , "kvm@vger.kernel.org" , Netdev , "Daly, Dan" , LKML , Maximilian Heyne , "Wang, Liang-min" , "Rustad, Mark D" , David Woodhouse , "dwmw@amazon.co.uk" , Ilya Lesokhin , Don Dutile , Kirti Wankhede Subject: RE: [PATCH] pci-iov: Add support for unmanaged SR-IOV Thread-Topic: [PATCH] pci-iov: Add support for unmanaged SR-IOV Thread-Index: AQHTsZsUOTRX+fT3dEWaUU3A75Oj+KO8e+lggAAHpJA= Date: Fri, 2 Mar 2018 06:55:44 +0000 Message-ID: References: <20180227190520.3273.79728.stgit@localhost.localdomain> <20180227144015.228d4f5c@w520.home> <20180228155949.00fde8ae@w520.home> <20180301132224.1ca06949@w520.home> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZGQyNzRhYWItZjZiNy00NDcwLWI0NDQtYjllYTUzOTYwNmVmIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6IlNVeUxrMXIrRWg4ejZlVUZ3eHUyU283bFwvbjRGNnJ0eWJKK0xiVkVHWjk4PSJ9 dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > From: Tian, Kevin > Sent: Friday, March 2, 2018 2:54 PM > > > From: Alex Williamson > > Sent: Friday, March 2, 2018 4:22 AM > > > > > > I am pretty sure that you are describing is true of some, but not for > > > all. I think the Amazon solutions and the virtio solution are doing > > > hard partitioning of the part. I will leave it to those guys to speak > > > for themselves since I don't know anything about the hardware design > > > of those parts. > > > > I think we'd need device specific knowledge and enablement to be able > > to take advantage of any hardware partitioning, otherwise we need to > > assume the pf is privileged, as implemented in other sriov devices. > > > > I'm also trying to imagine whether there's a solution via the new > > vfio/mdev interface, where the mdev vendor driver would bind to the pf > > and effectively present itself as the mdev device. The vendor driver > > could provide sriov capabilities and bear the burden of ensuring that > > the pf is used cooperatively. The only existing mdev vendor drivers are > > vGPUs and rely on on-device DMA translation and isolation, such as > > through GTTs, but there have been some thoughts on providing IOMMU > > based > > isolation of mdev/sriov mixed devices (assuming DMA is even required > > for userspace management of the pf in this use case). [Cc Kirti] > > Thanks, > > > > Hope not distracting this thread, but above sounds like an interesting > idea. Actually we ever brainstormed similar thought for another > potential usage - supporting VF live migration. We are already working > on an generic extension to allow state save/restore of mdev instance. > If vendor driver could further wrap pf as a mdev instance, it could I meant "wrap vf as a mdev instance" here. > leverage the same framework for a clean state migration on VF. based > on mmap callback the vendor driver can easily switch back-and-forth > between pass through and trap/emulation of the VF resources. Of > course doing so alone doesn't address all the demands of VF live > migration (e.g. dirty page tracking still requires other techniques), > but it does pave a way toward a general framework to support VF > live migration. > > If above is feasible, finally we could use one mdev framework to > manage both mdev and pf/vf assignment, while providing added > values which are difficult to achieve today. :-) > > Thanks > Kevin