Received: by 10.213.65.68 with SMTP id h4csp3505442imn; Tue, 3 Apr 2018 06:13:22 -0700 (PDT) X-Google-Smtp-Source: AIpwx48+0VSBkhOBdE8zuCs586CV09NMzymNFZvDaHIHcA9MVZ3xZHta/zP+njzSeOCR1aURy7ia X-Received: by 10.99.167.6 with SMTP id d6mr8869322pgf.287.1522761202460; Tue, 03 Apr 2018 06:13:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522761202; cv=none; d=google.com; s=arc-20160816; b=jJSVuMRdbIpJ++rdzKEhnF6seOHLCkq/FIHRIen/VmqU1MT+LgOt8wiKxR7WTHSy2B 5x5UmenW9iTZb8U3OyUsTwQu8+bHmD/zrn7I1HwQTVv5OxYdeyFW7C0YePJRmjrOjvgG CA9Ahh4uE4SLIGSrrYMN9/q5bxyJJyUlxP7jJndvb3pZUPBrYl7IEE5CFGE73gXZE7Lt VOH9UaELlG9i+Uvy8zclbPM6PCFf1udBcsZd3MGT2E/afIMmti2QR28g3gs9ydUmd2Bk R4nkpvuY7953JA5WgrLBMwHP7XtlybUfJcOEM4JZVNbkYZMPgm3Gdiu9Ac2bhVGIdmIw J9Jw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :arc-authentication-results; bh=DxrPnxQ8ijS6ZcuGJ5ClLY65KhX0Aya24+wJJkcLqhg=; b=PYhKbhVtPsWg2osxZPBsg4gwQBYFJzZvN96I+3sM+K40pF1cPC8KotapAkk/CZykcR TWjC/YuzY7s0iGBVt+d9W5/t1/0w0M4L5Nnov6dHImlDi3dg8YbhVRw6jFJCCVcddwXF W6LahCyzS2c8AtadeYgiVAoeCYx1incfj04GjTEVPy24cJDxZtLPtQn+otEmGfZtV5Dw hOA29apTD+9byqtvbBN8RvbqSNULqF3qboE4vpHMi9a51EXK97rj2uIvfGpvNDl/A2fb DqIF4jZAxTpveq0S05r0kCS/6AFiBoNtUXEVUV6mSCrzFiaSWlCSXf23p2JFyyoyGzkh afkQ== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 4-v6si2873954plc.59.2018.04.03.06.13.07; Tue, 03 Apr 2018 06:13:22 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932250AbeDCNLi (ORCPT + 99 others); Tue, 3 Apr 2018 09:11:38 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:56738 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932151AbeDCNLh (ORCPT ); Tue, 3 Apr 2018 09:11:37 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 1ED89406E8A4; Tue, 3 Apr 2018 13:11:36 +0000 (UTC) Received: from redhat.com (ovpn-120-228.rdu2.redhat.com [10.10.120.228]) by smtp.corp.redhat.com (Postfix) with SMTP id F080A2026E0E; Tue, 3 Apr 2018 13:11:33 +0000 (UTC) Date: Tue, 3 Apr 2018 16:11:33 +0300 From: "Michael S. Tsirkin" To: Alexander Duyck Cc: bhelgaas@google.com, alexander.h.duyck@intel.com, linux-pci@vger.kernel.org, virtio-dev@lists.oasis-open.org, kvm@vger.kernel.org, netdev@vger.kernel.org, dan.daly@intel.com, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org, keith.busch@intel.com, netanel@amazon.com, ddutile@redhat.com, mheyne@amazon.de, liang-min.wang@intel.com, mark.d.rustad@intel.com, dwmw2@infradead.org, hch@lst.de, dwmw@amazon.co.uk Subject: Re: [virtio-dev] [pci PATCH v7 2/5] virtio_pci: Add support for unmanaged SR-IOV on virtio_pci devices Message-ID: <20180403160847-mutt-send-email-mst@kernel.org> References: <20180315183449.3102.64791.stgit@localhost.localdomain> <20180315184132.3102.90947.stgit@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180315184132.3102.90947.stgit@localhost.localdomain> X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.7]); Tue, 03 Apr 2018 13:11:36 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.7]); Tue, 03 Apr 2018 13:11:36 +0000 (UTC) for IP:'10.11.54.4' DOMAIN:'int-mx04.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'mst@redhat.com' RCPT:'' Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Mar 15, 2018 at 11:42:41AM -0700, Alexander Duyck wrote: > From: Alexander Duyck > > Hardware-realized virtio_pci devices can implement SR-IOV, so this > patch enables its use. The device in question is an upcoming Intel > NIC that implements both a virtio_net PF and virtio_net VFs. These > are hardware realizations of what has been up to now been a software > interface. > > The device in question has the following 4-part PCI IDs: > > PF: vendor: 1af4 device: 1041 subvendor: 8086 subdevice: 15fe > VF: vendor: 1af4 device: 1041 subvendor: 8086 subdevice: 05fe > > The patch currently needs no check for device ID, because the callback > will never be made for devices that do not assert the capability or > when run on a platform incapable of SR-IOV. > > One reason for this patch is because the hardware requires the > vendor ID of a VF to be the same as the vendor ID of the PF that > created it. So it seemed logical to simply have a fully-functioning > virtio_net PF create the VFs. This patch makes that possible. > > Reviewed-by: Christoph Hellwig > Signed-off-by: Mark Rustad > Signed-off-by: Alexander Duyck I thought hard about this, and I think we need a feature bit for this. This way host can detect support, and we can also change our minds later if we need to modify the interface and manage VFs after all. It seems PCI specific so non pci transports would disable the feature for now. > --- > > v4: Dropped call to pci_disable_sriov in virtio_pci_remove function > v5: Replaced call to pci_sriov_configure_unmanaged with > pci_sriov_configure_simple > v6: Dropped "#ifdef" checks for IOV wrapping sriov_configure definition > v7: No code change, added Reviewed-by > > drivers/virtio/virtio_pci_common.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/virtio/virtio_pci_common.c b/drivers/virtio/virtio_pci_common.c > index 48d4d1cf1cb6..67a227fd7aa0 100644 > --- a/drivers/virtio/virtio_pci_common.c > +++ b/drivers/virtio/virtio_pci_common.c > @@ -596,6 +596,7 @@ static void virtio_pci_remove(struct pci_dev *pci_dev) > #ifdef CONFIG_PM_SLEEP > .driver.pm = &virtio_pci_pm_ops, > #endif > + .sriov_configure = pci_sriov_configure_simple, > }; > > module_pci_driver(virtio_pci_driver); > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org > For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org