From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 85691A0471 for ; Mon, 9 Sep 2019 13:55:58 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C9F242C08; Mon, 9 Sep 2019 13:55:57 +0200 (CEST) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50042.outbound.protection.outlook.com [40.107.5.42]) by dpdk.org (Postfix) with ESMTP id BD396DE3; Mon, 9 Sep 2019 13:55:56 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aPcrsKc5k9el/n8+w+sCeg9B8PyKk8wuEf3CujFAGGX41dD5o+qBjhj4LKE5X2N1VON6l4eDpOEvaJihalQdHwiwEsg8dTXt/vRj2u9tync8l7PZgAntX/CSEEqwD/fYt7oVZv+DSmhNQUSj8LtPiv4KQB3wJlDRjgtvjpQFE6kEc6aW7XB/9HxZcDuGTjooKSvGX79lV9afgzU0sdHaA8yoCyR97LpfBvdA4ptPsG0qiD97N3wMXL38ddnKtk/e/dU1xplbvwFFTYUhPxsmuHJhWu82QSdfQPl1i/paJysd/eYdcOHnUIpbyMjpltyMqM4VF1RFOxg2ATRqMDIqrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4tM1yZBgeAC+4ZaH8wQsQ87EvMLYozZcUhngjfrPPHI=; b=YTaFikcEX/bmlNbC4HxmsBLbVXF09sZSpgKjQmcMHHCkCFhjNGguAiZNL2GxmqddpCDuFpOtRMqfGuLO+cVKRxdpxG6ttzjqrPIR35K9WFsXtZHYYLz2l7LHZdPvTLI/ih8ELZYX2Lw8C7sC7yq8oAc6FlVEPIUPzUFPtLiqFKh+3B97NfLovryyFxRkIJrMoRtGVRVu9jBTqta9vRepmximTqthuQpo3glp4OIhWCFydCv+1lKk8sC+tu8ppYxZrDgudxKaKY+LW+dpXJwibze3X1C1c06dn8P/KbZi9tjoRodxypJrVnQegpiopJ7WU6EhJi2+4CfZkhy3iNqAXg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4tM1yZBgeAC+4ZaH8wQsQ87EvMLYozZcUhngjfrPPHI=; b=Z2XOA5OYjtsxOhScVeCaliHABVGk83R1ty8u1SEsYa8XZEF65Rsj3xmmhLoSX9YSQOTxLcHoQ/Kq+pGmFklCQd9pbJuOkZvmrmRbWz8LOTtglMET0NXmWzY1GXF873i1Wme12B6Yl9D0w1jTqFkS7TTAxhvIwztlgwlrOfGfv48= Received: from AM0PR0502MB3795.eurprd05.prod.outlook.com (52.133.45.150) by AM0PR0502MB3746.eurprd05.prod.outlook.com (52.133.47.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2241.18; Mon, 9 Sep 2019 11:55:55 +0000 Received: from AM0PR0502MB3795.eurprd05.prod.outlook.com ([fe80::4029:445f:9823:8942]) by AM0PR0502MB3795.eurprd05.prod.outlook.com ([fe80::4029:445f:9823:8942%7]) with mapi id 15.20.2241.018; Mon, 9 Sep 2019 11:55:55 +0000 From: Shahaf Shuler To: Maxime Coquelin , "tiwei.bie@intel.com" , "zhihong.wang@intel.com" , "amorenoz@redhat.com" , "xiao.w.wang@intel.com" , "dev@dpdk.org" , "jfreimann@redhat.com" CC: "stable@dpdk.org" , Matan Azrad Thread-Topic: [dpdk-dev] [PATCH 00/15] Introduce Virtio vDPA driver Thread-Index: AQHVXj/PmHlrTKdGU0CWlTgN3FkmracjSjyA Date: Mon, 9 Sep 2019 11:55:55 +0000 Message-ID: References: <20190829080000.20806-1-maxime.coquelin@redhat.com> In-Reply-To: <20190829080000.20806-1-maxime.coquelin@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=shahafs@mellanox.com; x-originating-ip: [193.47.165.251] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 41429c73-8160-4ec5-3d8f-08d7351cabbd x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:AM0PR0502MB3746; x-ms-traffictypediagnostic: AM0PR0502MB3746:|AM0PR0502MB3746: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-forefront-prvs: 01559F388D x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(39860400002)(366004)(376002)(136003)(396003)(189003)(199004)(33656002)(2501003)(486006)(476003)(99286004)(71200400001)(76176011)(316002)(54906003)(71190400001)(110136005)(7696005)(76116006)(5660300002)(55016002)(53936002)(26005)(6436002)(14444005)(256004)(7736002)(107886003)(6246003)(305945005)(9686003)(11346002)(81156014)(229853002)(186003)(81166006)(66066001)(8676002)(478600001)(8936002)(14454004)(6506007)(102836004)(66946007)(4326008)(64756008)(66556008)(66476007)(66446008)(25786009)(2906002)(74316002)(2201001)(6116002)(3846002)(446003)(86362001)(52536014); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0502MB3746; H:AM0PR0502MB3795.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: 10wDJtd0gqWK19YCZimT1FWVml3oTeYxVNlbTA/8lcN2g7YUmz5cyQTVqPZAu+NhbRwOIvoXp72YlbEJ1S+oTC3bX2VT5ShVy6oD1mHIQAZ4XzjPPtnDrTk605Jlts/JRZbnaQoLei+YnMXcwuHv7pqJUSE+1Wren1GhN2gWQLfsAlSmkR5wbd7rBwguU2JkE0il1/U/AgyWCMNpltOWAdTfhQuLAZPa02w4lvgibA21dBkY11AhljJkN5OutfgPYwzuSWBLM2cnKEa2U0c9/XjPRrsJRrmfPd6hJSSP7FpSCLEv5JI54KSI9JTLeB08cjOFmdh/AV7stGX7FXhKgaISop5dVOmwyLj3B19Ii6bv58Ddoqnlf7n7mSk7lI7txEc8PnBbo8K0Ski3b7hRn8QqwyO4isS2kEy5y4ASRy0= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 41429c73-8160-4ec5-3d8f-08d7351cabbd X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2019 11:55:55.2027 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iPRhQk3XxR0UVE3TLIRMyRSSa2d9USJIy8izVFLvnDuBNSyIi5HKUjRxk152fPoa8gzfU1ZG9ka/zup2D6Zn4Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0502MB3746 Subject: Re: [dpdk-dev] [PATCH 00/15] Introduce Virtio vDPA driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Maxime,=20 Thursday, August 29, 2019 11:00 AM, Maxime Coquelin: > Subject: [dpdk-dev] [PATCH 00/15] Introduce Virtio vDPA driver >=20 > vDPA allows to offload Virtio Datapath processing by supported NICs, like > IFCVF for example. >=20 > The control path has to be handled by a dedicated vDPA driver, so that it= can > translate Vhost-user protocol requests to proprietary NICs registers > accesses. >=20 > This driver is the vDPA driver for Virtio devices, meaning that Vhost-use= r > protocol requests get translated to Virtio registers accesses as per defi= ned in > the Virtio spec. >=20 > Basically, it can be used within a guest with a para-virtualized Virtio-n= et > device, or even with a full Virtio HW offload NIC directly on host. Can you elaborate more on the use cases to use such driver?=20 1. If the underlying HW can support full virtio device, why we need to work= w/ it w/ vDPA mode? Why not providing it to the VM as passthrough one? 2. why it is preferable to work w/ virtio device as the backend device to b= e used w/ vDPA v.s. working w/ the underlying HW VF?=20 Is nested virtualization is what you have in mind? >=20 > Amongst the main features, all currently supported Virtio spec versions a= re > supported (split & packed rings, but only tested with split ring for now)= and > also multiqueue support is added by implementing the cotnrol virtqueue in > the driver. >=20 > The structure of this driver is heavily based on IFCVF vDPA. >=20 > Maxime Coquelin (15): > vhost: remove vhost kernel header inclusion > vhost: configure vDPA as soon as the device is ready > net/virtio: move control path fonctions in virtqueue file > net/virtio: add virtio PCI subsystem device ID declaration > net/virtio: save notify bar ID in virtio HW struct > net/virtio: add skeleton for virtio vDPA driver > net/virtio: add vDPA ops to get number of queue > net/virtio: add virtio vDPA op to get features > net/virtio: add virtio vDPA op to get protocol features > net/virtio: add vDPA op to configure and start the device > net/virtio: add vDPA op to stop and close the device > net/virtio: add vDPA op to set features > net/virtio: add vDPA ops to get VFIO FDs > net/virtio: add vDPA op to get notification area > doc: add documentation for Virtio vDPA driver >=20 > config/common_linux | 1 + > doc/guides/nics/index.rst | 1 + > doc/guides/nics/virtio_vdpa.rst | 45 ++ > drivers/net/ifc/ifcvf_vdpa.c | 1 + > drivers/net/virtio/Makefile | 4 + > drivers/net/virtio/meson.build | 3 +- > drivers/net/virtio/virtio_ethdev.c | 252 -------- > drivers/net/virtio/virtio_pci.c | 6 +- > drivers/net/virtio/virtio_pci.h | 2 + > drivers/net/virtio/virtio_vdpa.c | 918 +++++++++++++++++++++++++++++ > drivers/net/virtio/virtqueue.c | 255 ++++++++ > drivers/net/virtio/virtqueue.h | 5 + > lib/librte_vhost/rte_vdpa.h | 1 - > lib/librte_vhost/rte_vhost.h | 9 +- > lib/librte_vhost/vhost_user.c | 3 +- > 15 files changed, 1243 insertions(+), 263 deletions(-) create mode 1006= 44 > doc/guides/nics/virtio_vdpa.rst create mode 100644 > drivers/net/virtio/virtio_vdpa.c >=20 > -- > 2.21.0