From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 1B15AA04C0;
	Fri, 25 Sep 2020 14:31:28 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id EFC671E8AB;
	Fri, 25 Sep 2020 14:31:27 +0200 (CEST)
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [63.128.21.124])
 by dpdk.org (Postfix) with ESMTP id 9EDA61E89E
 for <dev@dpdk.org>; Fri, 25 Sep 2020 14:31:26 +0200 (CEST)
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
 s=mimecast20190719; t=1601037086;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding;
 bh=bgY5e2dwinjePdxZ1TKOtSds8vXbcxjoDp5bqE9DnkY=;
 b=OKuXvQoh3RBYBvBKexKUCxZMB7WCwolBD5inOHvMx8o/IocAJ64Kl41gHA+HV4kaJWZa7D
 P3xssaIlsTZt/nTvFhk/aZ9k+EdILXSYwaLusv1UhGtDChC6OF8ZrMKPUOAMkMaCCNIrpZ
 W4FGhB2F8gRdJHjDj81LS+7nfRiiaQA=
Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com
 [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id
 us-mta-282-bfD1eCZtPPeGTBFyF8mhCA-1; Fri, 25 Sep 2020 08:31:22 -0400
X-MC-Unique: bfD1eCZtPPeGTBFyF8mhCA-1
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com
 [10.5.11.11])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3E66388CE5B;
 Fri, 25 Sep 2020 12:31:21 +0000 (UTC)
Received: from localhost.localdomain (unknown [10.36.110.9])
 by smtp.corp.redhat.com (Postfix) with ESMTP id CDCB2702E7;
 Fri, 25 Sep 2020 12:31:15 +0000 (UTC)
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: dev@dpdk.org, chenbo.xia@intel.com, patrick.fu@intel.com,
 amorenoz@redhat.com
Cc: Maxime Coquelin <maxime.coquelin@redhat.com>
Date: Fri, 25 Sep 2020 14:31:05 +0200
Message-Id: <20200925123113.68916-1-maxime.coquelin@redhat.com>
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11
Authentication-Results: relay.mimecast.com;
 auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=maxime.coquelin@redhat.com
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="US-ASCII"
Subject: [dpdk-dev] [PATCH v2 0/8] virtio-user: introduce vhost-vdpa backend
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

vhost-vDPA is a new vhost backend type introduced by vDPA kernel
framework, which provides abstruction to the vDPA devices and
exposes to userspace a unified control interface through char devs.

This patch set adds vhost-vdpa backend type to the virtio_user.
A set of vhost-vdpa specific ops callbacks are attached to the
virtio_user according to the runtime dynamic check result of the
backend type. DMA memory map/unmap callbacks are added to both
vdev bus driver and virtio_user pmd to support address mapping.
In addition, minor fixes to existing virtio control path are also
implemented to make the new backend work.

This is a collaborative work done with Patrick Fu from Intel and
Adrian Moreno from Red Hat. Thanks to them for their contributions.

The series has been tested with vdpasim and Intel IFC Kernel vDPA
drivers, and more lightly with Mellanox mlx5_vdpa on ConnectX-6 Dx.

Changes in v2:
-----------------
 * Split backend-type patch (Adrian)
 * Fix get_status size (Chenbo)
 * Various minro fixes (Chenbo)

Adrian Moreno (1):
  net/virtio: move backend type selection to ethdev

Maxime Coquelin (7):
  bus/vdev: add DMA mapping ops
  net/virtio: introduce DMA ops
  net/virtio: introduce Vhost-vDPA backend type
  net/virtio: check protocol feature in user backend
  net/virtio: adapt Virtio-user status size
  net/virtio: split virtio-user start
  net/virtio: introduce Vhost-vDPA backend

 drivers/bus/vdev/rte_bus_vdev.h               |  46 ++-
 drivers/bus/vdev/vdev.c                       |  52 +++
 drivers/net/virtio/meson.build                |   1 +
 drivers/net/virtio/virtio_user/vhost.h        |   5 +
 drivers/net/virtio/virtio_user/vhost_user.c   |   6 +-
 drivers/net/virtio/virtio_user/vhost_vdpa.c   | 298 ++++++++++++++++++
 .../net/virtio/virtio_user/virtio_user_dev.c  | 117 ++++---
 .../net/virtio/virtio_user/virtio_user_dev.h  |  13 +-
 drivers/net/virtio/virtio_user_ethdev.c       | 126 +++++++-
 9 files changed, 607 insertions(+), 57 deletions(-)
 create mode 100644 drivers/net/virtio/virtio_user/vhost_vdpa.c

-- 
2.26.2