Received: by 10.223.185.116 with SMTP id b49csp8321299wrg; Thu, 1 Mar 2018 22:55:28 -0800 (PST) X-Google-Smtp-Source: AG47ELsWWnm2OS1zIVTEica4rKu848FCGodxb3N2Pt/9Z2uM9548Bag+Ec40B4VjkVCOiUkvoVcg X-Received: by 10.101.101.10 with SMTP id x10mr3812618pgv.223.1519973728700; Thu, 01 Mar 2018 22:55:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519973728; cv=none; d=google.com; s=arc-20160816; b=feYjHcZMpIt0SOEubZPaVVaOVKuntp8JPJzlQN/O4Rhh1Jfz0p9N25i8bwjl2y0EqF NoMBIBq1ourlbF9CIPixq96S1sl6VMZbzcEd1vyxYYPIRcscP9J0H/xO2NRJjRPN+wlX C2EKvQyI7/t8ijSQBTxCx195IHkRgRj9xFmHpX+3WuRP/VtoPY5yFWw8nVtXoM7aw+kw 4Du00cva6zrEI9e7ZtAQOeWFOSmjL+L4dX3dJaNmr9f1WmScjkLAhdRQ0CJcbskfhvej vg5UI7YVbii7GfnGml8utb70l/RwQ53rwAP+vRZfiePy2WBHYV0L4UOFr7iGg29+AIMA eqgQ== 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=Twrjg7gJ1QP965bGJk+W6ZMdzGazKmnnl2MXJvwFHVs=; b=AKWmJThLtClAGVWLUBnjnKhkhOW5SuvriMtZaat4FYf++aOZwWQ5A+QF31VHVj3WON svkRNi2otRAJeH9F9P2s2KnP56Vl1D/8hqE1nVkIBp7YIyayARk08FwBZ7gkr/7j8idn Uo3bl2Cb257CXKob+DUNUoMNwte2wNuQ4n6xnuuPGQ9qvao30cz1DupDswKoKG3OcC6A nB/zxi7somp/Ljoty2DjeQa2j+y0ttjhfz9hSKVTyvOZQVg3QSDDuAEDB5rNyq5fItdW NKMOufyJgJVjs2SV0rNBAKTfeT33MGogzkksSQxNG73w7V+BPQCG821Mgk/vnFu8MDP+ AcWA== 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 ba10-v6si4343366plb.5.2018.03.01.22.55.13; Thu, 01 Mar 2018 22:55:28 -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 S936083AbeCBGyZ convert rfc822-to-8bit (ORCPT + 99 others); Fri, 2 Mar 2018 01:54:25 -0500 Received: from mga14.intel.com ([192.55.52.115]:2929 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935863AbeCBGyW (ORCPT ); Fri, 2 Mar 2018 01:54:22 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Mar 2018 22:54:21 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,411,1515484800"; d="scan'208";a="204937672" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga005.jf.intel.com with ESMTP; 01 Mar 2018 22:54:21 -0800 Received: from fmsmsx152.amr.corp.intel.com (10.18.125.5) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 1 Mar 2018 22:54:20 -0800 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by FMSMSX152.amr.corp.intel.com (10.18.125.5) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 1 Mar 2018 22:54:20 -0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.253]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.125]) with mapi id 14.03.0319.002; Fri, 2 Mar 2018 14:54:18 +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+lg Date: Fri, 2 Mar 2018 06:54:17 +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: <20180301132224.1ca06949@w520.home> 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: 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 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