Show a cover letter.

GET /api/covers/72231/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 72231,
    "url": "http://patches.dpdk.org/api/covers/72231/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/cover/20200626132712.1437673-1-maxime.coquelin@redhat.com/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20200626132712.1437673-1-maxime.coquelin@redhat.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200626132712.1437673-1-maxime.coquelin@redhat.com",
    "date": "2020-06-26T13:26:58",
    "name": "[v3,00/14] vDPA API and framework rework",
    "submitter": {
        "id": 512,
        "url": "http://patches.dpdk.org/api/people/512/?format=api",
        "name": "Maxime Coquelin",
        "email": "maxime.coquelin@redhat.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/cover/20200626132712.1437673-1-maxime.coquelin@redhat.com/mbox/",
    "series": [
        {
            "id": 10633,
            "url": "http://patches.dpdk.org/api/series/10633/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=10633",
            "date": "2020-06-26T13:26:58",
            "name": "vDPA API and framework rework",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/10633/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/72231/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 7FDF7A051C;\n\tFri, 26 Jun 2020 15:27:55 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 31BEB1BF7C;\n\tFri, 26 Jun 2020 15:27:54 +0200 (CEST)",
            "from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com\n [205.139.110.120]) by dpdk.org (Postfix) with ESMTP id 6598E1BF78\n for <dev@dpdk.org>; Fri, 26 Jun 2020 15:27:52 +0200 (CEST)",
            "from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com\n [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id\n us-mta-182-xCD6fvU1NpqMmzMgPjqd3w-1; Fri, 26 Jun 2020 09:27:48 -0400",
            "from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com\n [10.5.11.16])\n (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n (No client certificate requested)\n by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8F01A464;\n Fri, 26 Jun 2020 13:27:46 +0000 (UTC)",
            "from localhost.localdomain (unknown [10.36.110.7])\n by smtp.corp.redhat.com (Postfix) with ESMTP id AF3882CEDD;\n Fri, 26 Jun 2020 13:27:24 +0000 (UTC)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1593178071;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding;\n bh=H+BKugQiOvR3Xr+Zo2Q9VrW3Ix6aThse/O+fAnucKUo=;\n b=Hl80JsVggSuIWCVZ3eYs1LXB5BV4/ZXAoIzwj49Lftk3YCWiCBImSh9eJAdwDrCf0S3UD+\n kaNtofrPmXCffouiZO1DxcdfMsPpNvm+D75qixl6dFZueu5hZ58CdnXV/4Fr20sdX3UKgF\n faJlWdtDygDhsZ3gnGs4VCBtwiNDR1g=",
        "X-MC-Unique": "xCD6fvU1NpqMmzMgPjqd3w-1",
        "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "To": "matan@mellanox.com, xiao.w.wang@intel.com, zhihong.wang@intel.com,\n chenbo.xia@intel.com, david.marchand@redhat.com, amorenoz@redhat.com,\n viacheslavo@mellanox.com, hemant.agrawal@nxp.com, sachin.saxena@nxp.com,\n grive@u256.net, dev@dpdk.org",
        "Cc": "Maxime Coquelin <maxime.coquelin@redhat.com>",
        "Date": "Fri, 26 Jun 2020 15:26:58 +0200",
        "Message-Id": "<20200626132712.1437673-1-maxime.coquelin@redhat.com>",
        "MIME-Version": "1.0",
        "X-Scanned-By": "MIMEDefang 2.79 on 10.5.11.16",
        "X-Mimecast-Spam-Score": "0",
        "X-Mimecast-Originator": "redhat.com",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v3 00/14] vDPA API and framework rework",
        "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>,\n <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>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "This series aims to rework the vDPA framework and\nits API to better fit into the DPDK device model\nand also be more easily consumable by applications.\n\nMain changes are creating a device class for vDPA,\nwhich enables applications to iterate vDPA devices\nin a generic way:\n\nRTE_DEV_FOREACH(dev, \"class=vdpa\", it) {...}\n\nAlso the notion of vDPA device ID is replaced\nwith both application & drivers using the\nrte_vdpa_device as reference. Doing that also\nmade possible to store devices references into\na linked list instead of a static array. Last\npatch makes the rte_vdpa_device structure\ncontent opaque to the applications, creating\na clear barrier between application visible\nAPI and drivers visble ones.\n\nThe first two patches fixes issues in some\nbusses iterators, causing segmentation faults\nwhen iterating only on a device class.\n\nWhile reviewing, if you notice further possible\nimprovements, please let me know. Target is to\nremove the experimental tag from vDPA APIs in\nnext LTS release.\n\nThanks to David for giving me some ideas of\nimprovements!\n\nChanges since v2:\n-----------------\n- Remove useless new line in error messages (Adrian)\n- Use strncmp fo dev name comparisons (Adrian)\n- Apply Adrian Acked-by's\n\nChanges since v1:\n-----------------\n- Rebase on top of net-next\n- Use rte_pci_addr_cmp() instead of comparing pci dev pointers (Gaëtan)\n- Use proper types for calculating device ID (Gaëtan)\n\nMaxime Coquelin (14):\n  bus/dpaa: fix null pointer dereference\n  bus/fslmc: fix null pointer dereference\n  vhost: introduce vDPA devices class\n  vhost: make vDPA framework bus agnostic\n  vhost: replace device ID in vDPA ops\n  vhost: replace vDPA device ID in Vhost\n  vhost: replace device ID in applications\n  vhost: remove useless vDPA API\n  vhost: use linked-list for vDPA devices\n  vhost: introduce wrappers for some vDPA ops\n  examples/vdpa: use new wrappers instead of ops\n  examples/vdpa: remove useless device count\n  vhost: remove vDPA device count API\n  vhost: split vDPA header file\n\n drivers/bus/dpaa/dpaa_bus.c            |   5 +\n drivers/bus/fslmc/fslmc_bus.c          |   5 +\n drivers/vdpa/ifc/ifcvf_vdpa.c          |  87 ++++----\n drivers/vdpa/mlx5/mlx5_vdpa.c          | 134 ++++++------\n drivers/vdpa/mlx5/mlx5_vdpa.h          |   5 +-\n examples/vdpa/main.c                   | 149 +++++++-------\n lib/librte_vhost/Makefile              |   3 +-\n lib/librte_vhost/meson.build           |   3 +-\n lib/librte_vhost/rte_vdpa.h            | 188 +++++------------\n lib/librte_vhost/rte_vdpa_dev.h        | 147 +++++++++++++\n lib/librte_vhost/rte_vhost.h           |  20 +-\n lib/librte_vhost/rte_vhost_version.map |  11 +-\n lib/librte_vhost/socket.c              |  48 ++---\n lib/librte_vhost/vdpa.c                | 275 +++++++++++++++----------\n lib/librte_vhost/vhost.c               |  19 +-\n lib/librte_vhost/vhost.h               |   9 +-\n lib/librte_vhost/vhost_user.c          |  28 +--\n 17 files changed, 634 insertions(+), 502 deletions(-)\n create mode 100644 lib/librte_vhost/rte_vdpa_dev.h"
}