get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/51732/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 51732,
    "url": "http://patches.dpdk.org/api/patches/51732/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1553614522-12151-8-git-send-email-viacheslavo@mellanox.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": "<1553614522-12151-8-git-send-email-viacheslavo@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1553614522-12151-8-git-send-email-viacheslavo@mellanox.com",
    "date": "2019-03-26T15:35:16",
    "name": "[v3,07/13] net/mlx5: switch to the shared Protection Domain",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "6272fc032b171efbcb694785f9b0d3fdc5bad1a6",
    "submitter": {
        "id": 1102,
        "url": "http://patches.dpdk.org/api/people/1102/?format=api",
        "name": "Slava Ovsiienko",
        "email": "viacheslavo@mellanox.com"
    },
    "delegate": {
        "id": 6624,
        "url": "http://patches.dpdk.org/api/users/6624/?format=api",
        "username": "shahafs",
        "first_name": "Shahaf",
        "last_name": "Shuler",
        "email": "shahafs@mellanox.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1553614522-12151-8-git-send-email-viacheslavo@mellanox.com/mbox/",
    "series": [
        {
            "id": 3928,
            "url": "http://patches.dpdk.org/api/series/3928/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=3928",
            "date": "2019-03-26T15:35:11",
            "name": "net/mlx5: add support for multiport IB devices",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/3928/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/51732/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/51732/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 0753B1B1F7;\n\tTue, 26 Mar 2019 16:36:21 +0100 (CET)",
            "from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129])\n\tby dpdk.org (Postfix) with ESMTP id 70E811B136\n\tfor <dev@dpdk.org>; Tue, 26 Mar 2019 16:36:05 +0100 (CET)",
            "from Internal Mail-Server by MTLPINE1 (envelope-from\n\tviacheslavo@mellanox.com)\n\twith ESMTPS (AES256-SHA encrypted); 26 Mar 2019 17:36:02 +0200",
            "from pegasus12.mtr.labs.mlnx. (pegasus12.mtr.labs.mlnx\n\t[10.210.17.40])\n\tby labmailer.mlnx (8.13.8/8.13.8) with ESMTP id x2QFa1wU019637;\n\tTue, 26 Mar 2019 17:36:02 +0200"
        ],
        "From": "Viacheslav Ovsiienko <viacheslavo@mellanox.com>",
        "To": "dev@dpdk.org",
        "Cc": "shahafs@mellanox.com",
        "Date": "Tue, 26 Mar 2019 15:35:16 +0000",
        "Message-Id": "<1553614522-12151-8-git-send-email-viacheslavo@mellanox.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1553614522-12151-1-git-send-email-viacheslavo@mellanox.com>",
        "References": "<1553533414-9911-1-git-send-email-viacheslavo@mellanox.com>\n\t<1553614522-12151-1-git-send-email-viacheslavo@mellanox.com>",
        "Subject": "[dpdk-dev] [PATCH v3 07/13] net/mlx5: switch to the shared\n\tProtection Domain",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "The PMD code is updated to use Protected Domain from the\nthe shared IB device context. The Domain is shared between\nall devices belonging to the same multiport Infiniband device.\nIf IB device has only one port, the PD is not shared, because\nthere is only ethernet device created over IB one.\n\nSigned-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>\nAcked-by: Shahaf Shuler <shahafs@mellanox.com>\n---\n drivers/net/mlx5/mlx5.c     |  1 -\n drivers/net/mlx5/mlx5.h     |  1 -\n drivers/net/mlx5/mlx5_mr.c  |  4 ++--\n drivers/net/mlx5/mlx5_rxq.c | 10 +++++-----\n drivers/net/mlx5/mlx5_txq.c |  2 +-\n 5 files changed, 8 insertions(+), 10 deletions(-)",
    "diff": "diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c\nindex dd70e53..ef49f2d 100644\n--- a/drivers/net/mlx5/mlx5.c\n+++ b/drivers/net/mlx5/mlx5.c\n@@ -1108,7 +1108,6 @@ struct mlx5_dev_spawn_data {\n \tpriv->ctx = sh->ctx;\n \tpriv->ibv_port = spawn->ibv_port;\n \tpriv->device_attr = sh->device_attr;\n-\tpriv->pd = sh->pd;\n \tpriv->mtu = ETHER_MTU;\n #ifndef RTE_ARCH_64\n \t/* Initialize UAR access locks for 32bit implementations. */\ndiff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h\nindex e5edcde..f7debf1 100644\n--- a/drivers/net/mlx5/mlx5.h\n+++ b/drivers/net/mlx5/mlx5.h\n@@ -234,7 +234,6 @@ struct mlx5_priv {\n \tuint32_t ibv_port; /* IB device port number. */\n \tstruct ibv_context *ctx; /* Verbs context. */\n \tstruct ibv_device_attr_ex device_attr; /* Device properties. */\n-\tstruct ibv_pd *pd; /* Protection Domain. */\n \tstruct ether_addr mac[MLX5_MAX_MAC_ADDRESSES]; /* MAC addresses. */\n \tBITFIELD_DECLARE(mac_own, uint64_t, MLX5_MAX_MAC_ADDRESSES);\n \t/* Bit-field of MAC addresses owned by the PMD. */\ndiff --git a/drivers/net/mlx5/mlx5_mr.c b/drivers/net/mlx5/mlx5_mr.c\nindex 700d83d..f7eb9a5 100644\n--- a/drivers/net/mlx5/mlx5_mr.c\n+++ b/drivers/net/mlx5/mlx5_mr.c\n@@ -719,7 +719,7 @@ struct mr_update_mp_data {\n \t * mlx5_alloc_buf_extern() which eventually calls rte_malloc_socket()\n \t * through mlx5_alloc_verbs_buf().\n \t */\n-\tmr->ibv_mr = mlx5_glue->reg_mr(priv->pd, (void *)data.start, len,\n+\tmr->ibv_mr = mlx5_glue->reg_mr(priv->sh->pd, (void *)data.start, len,\n \t\t\t\t       IBV_ACCESS_LOCAL_WRITE);\n \tif (mr->ibv_mr == NULL) {\n \t\tDEBUG(\"port %u fail to create a verbs MR for address (%p)\",\n@@ -1156,7 +1156,7 @@ struct mr_update_mp_data {\n \t}\n \tDRV_LOG(DEBUG, \"port %u register MR for chunk #%d of mempool (%s)\",\n \t\tdev->data->port_id, mem_idx, mp->name);\n-\tmr->ibv_mr = mlx5_glue->reg_mr(priv->pd, (void *)addr, len,\n+\tmr->ibv_mr = mlx5_glue->reg_mr(priv->sh->pd, (void *)addr, len,\n \t\t\t\t       IBV_ACCESS_LOCAL_WRITE);\n \tif (mr->ibv_mr == NULL) {\n \t\tDRV_LOG(WARNING,\ndiff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c\nindex 2f60999..0496c4e 100644\n--- a/drivers/net/mlx5/mlx5_rxq.c\n+++ b/drivers/net/mlx5/mlx5_rxq.c\n@@ -867,7 +867,7 @@ struct mlx5_rxq_ibv *\n \t\t.max_wr = wqe_n >> rxq_data->sges_n,\n \t\t/* Max number of scatter/gather elements in a WR. */\n \t\t.max_sge = 1 << rxq_data->sges_n,\n-\t\t.pd = priv->pd,\n+\t\t.pd = priv->sh->pd,\n \t\t.cq = tmpl->cq,\n \t\t.comp_mask =\n \t\t\tIBV_WQ_FLAGS_CVLAN_STRIPPING |\n@@ -1831,7 +1831,7 @@ struct mlx5_hrxq *\n \t\t\t\t.rx_hash_fields_mask = hash_fields,\n \t\t\t},\n \t\t\t.rwq_ind_tbl = ind_tbl->ind_table,\n-\t\t\t.pd = priv->pd,\n+\t\t\t.pd = priv->sh->pd,\n \t\t },\n \t\t &qp_init_attr);\n #else\n@@ -1850,7 +1850,7 @@ struct mlx5_hrxq *\n \t\t\t\t.rx_hash_fields_mask = hash_fields,\n \t\t\t},\n \t\t\t.rwq_ind_tbl = ind_tbl->ind_table,\n-\t\t\t.pd = priv->pd,\n+\t\t\t.pd = priv->sh->pd,\n \t\t });\n #endif\n \tif (!qp) {\n@@ -2006,7 +2006,7 @@ struct mlx5_rxq_ibv *\n \t\t\t.wq_type = IBV_WQT_RQ,\n \t\t\t.max_wr = 1,\n \t\t\t.max_sge = 1,\n-\t\t\t.pd = priv->pd,\n+\t\t\t.pd = priv->sh->pd,\n \t\t\t.cq = cq,\n \t\t });\n \tif (!wq) {\n@@ -2160,7 +2160,7 @@ struct mlx5_hrxq *\n \t\t\t\t.rx_hash_fields_mask = 0,\n \t\t\t\t},\n \t\t\t.rwq_ind_tbl = ind_tbl->ind_table,\n-\t\t\t.pd = priv->pd\n+\t\t\t.pd = priv->sh->pd\n \t\t });\n \tif (!qp) {\n \t\tDEBUG(\"port %u cannot allocate QP for drop queue\",\ndiff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c\nindex d185617..d3a5498 100644\n--- a/drivers/net/mlx5/mlx5_txq.c\n+++ b/drivers/net/mlx5/mlx5_txq.c\n@@ -426,7 +426,7 @@ struct mlx5_txq_ibv *\n \t\t * Tx burst.\n \t\t */\n \t\t.sq_sig_all = 0,\n-\t\t.pd = priv->pd,\n+\t\t.pd = priv->sh->pd,\n \t\t.comp_mask = IBV_QP_INIT_ATTR_PD,\n \t};\n \tif (txq_data->max_inline)\n",
    "prefixes": [
        "v3",
        "07/13"
    ]
}