get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 124126,
    "url": "http://patches.dpdk.org/api/patches/124126/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230217154759.2484937-2-ed.czeck@atomicrules.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": "<20230217154759.2484937-2-ed.czeck@atomicrules.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230217154759.2484937-2-ed.czeck@atomicrules.com",
    "date": "2023-02-17T15:47:57",
    "name": "[2/3] net/ark: support for single function with multiple port",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "9de11426f755eadaf9286a09fb65fe8d3db0f6e4",
    "submitter": {
        "id": 699,
        "url": "http://patches.dpdk.org/api/people/699/?format=api",
        "name": "Ed Czeck",
        "email": "ed.czeck@atomicrules.com"
    },
    "delegate": {
        "id": 319,
        "url": "http://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20230217154759.2484937-2-ed.czeck@atomicrules.com/mbox/",
    "series": [
        {
            "id": 27062,
            "url": "http://patches.dpdk.org/api/series/27062/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=27062",
            "date": "2023-02-17T15:47:56",
            "name": "[1/3] net/ark: support secondary process",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/27062/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/124126/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/124126/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 42DEB41CC1;\n\tFri, 17 Feb 2023 16:48:16 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C1DA042D10;\n\tFri, 17 Feb 2023 16:48:10 +0100 (CET)",
            "from mail-qv1-f51.google.com (mail-qv1-f51.google.com\n [209.85.219.51]) by mails.dpdk.org (Postfix) with ESMTP id 46C1A4161A\n for <dev@dpdk.org>; Fri, 17 Feb 2023 16:48:09 +0100 (CET)",
            "by mail-qv1-f51.google.com with SMTP id c10so1499549qvp.4\n for <dev@dpdk.org>; Fri, 17 Feb 2023 07:48:09 -0800 (PST)",
            "from z690.czeck.local (pool-173-48-111-149.bstnma.fios.verizon.net.\n [173.48.111.149]) by smtp.gmail.com with ESMTPSA id\n o73-20020a37414c000000b007195af894e7sm3440904qka.76.2023.02.17.07.48.06\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 17 Feb 2023 07:48:07 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=atomicrules-com.20210112.gappssmtp.com; s=20210112;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=Za96cy54hNnpA2RBCW5VRodHJ7t0VdB4hm0NFPKEBa8=;\n b=Py0HHUiMDZvehRuauXVQj331aVGiItGdjd9Ft+Nt7ErrcDgHP4btNc9FLZPqaaqtBF\n lZIZKC9+rPm0SYrEbnnIERCRoqvH+GTiRC6jK5NB4fVR7cyT1umaKI0IyLPj5W/a1rFA\n uVGQRTWZTq39+J+PvfgJb88jkVFZtReWJwHP0U9zKh6+UNdSfUqOr1vJ20K8CKHAfnR5\n y2xIJy7exXJzy88uE6v1hkxAm133IPX3Sg1M7Zi1M+lt+oUDMroKpY+cRFozH3skUy66\n u9KzEZOxJH04xhh5vUjDP3/yGm6QAGZ6QL+4UDIhA0DoAkHcbDZ5jTvBrlnIbYlvA9pR\n P6iw==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20210112;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=Za96cy54hNnpA2RBCW5VRodHJ7t0VdB4hm0NFPKEBa8=;\n b=m/zDSz1jmhLLGyKKJ59cg7j1etSCf8vKbW4BIsf093hxR58POp4WNTy6K7wsIh1TAy\n Q1f2tX+LFutTqrT0GvS3C4OIt6kGJNLySVT0hkudtkX3bWJMBpJZbT9Rnmjc7SgkydyJ\n 7UGEqeZAHmNRQPclfBx1JKfz8RukO3tyBS91AJSRc7OMZNsdXIOXV3FgYcfZaemJGO8A\n 3xQX6xlvU0YUdqj5F4XmqJHUojkT5/qE3ylhTTkZmaMIjOw8G8sxpcK8M93N2VsA70Bv\n B6cXghHha6DdVc17bao7X+BkcbM42FXvv4ihHk3wHOg5vg+wkJMM/xYpAGYZa4gOz8ki\n d5lA==",
        "X-Gm-Message-State": "AO0yUKUrmhdFNYFQxSxbKqVSw/eSDcgtChkFlSWF15cork8oiZS6DDHF\n vS584FLY5LZ+bXl1ls7hGLQgVgeH0fmX/Ik6",
        "X-Google-Smtp-Source": "\n AK7set8v+CSHL410eKHOTma8IORynyz1BdEaoMg3fDVSYlOPVTj25odoBd3KkDO+0FagZ7m7Hze+gQ==",
        "X-Received": "by 2002:a05:6214:528d:b0:56e:ace7:6a03 with SMTP id\n kj13-20020a056214528d00b0056eace76a03mr9667913qvb.6.1676648887961;\n Fri, 17 Feb 2023 07:48:07 -0800 (PST)",
        "From": "Ed Czeck <ed.czeck@atomicrules.com>",
        "To": "dev@dpdk.org,\n\tferruh.yigit@amd.com",
        "Cc": "Shepard Siegel <shepard.siegel@atomicrules.com>,\n John Miller <john.miller@atomicrules.com>",
        "Subject": "[PATCH 2/3] net/ark: support for single function with multiple port",
        "Date": "Fri, 17 Feb 2023 10:47:57 -0500",
        "Message-Id": "<20230217154759.2484937-2-ed.czeck@atomicrules.com>",
        "X-Mailer": "git-send-email 2.34.1",
        "In-Reply-To": "<20230217154759.2484937-1-ed.czeck@atomicrules.com>",
        "References": "<20230217154759.2484937-1-ed.czeck@atomicrules.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "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"
    },
    "content": "allows the creation of multiple ports from one ark device via\nthe use of ark pmd extension, though the splitting of queues\nAdd unique dev_private data for each port\n\nSigned-off-by: Ed Czeck <ed.czeck@atomicrules.com>\n---\n drivers/net/ark/ark_ethdev.c    | 14 +++++++++++++-\n drivers/net/ark/ark_ethdev_rx.c |  6 +++---\n drivers/net/ark/ark_ethdev_tx.c |  2 +-\n drivers/net/ark/ark_global.h    |  4 ++++\n 4 files changed, 21 insertions(+), 5 deletions(-)",
    "diff": "diff --git a/drivers/net/ark/ark_ethdev.c b/drivers/net/ark/ark_ethdev.c\nindex f96722551e..2fff3cd6ba 100644\n--- a/drivers/net/ark/ark_ethdev.c\n+++ b/drivers/net/ark/ark_ethdev.c\n@@ -432,6 +432,7 @@ eth_ark_dev_init(struct rte_eth_dev *dev)\n \t\t\tark->user_ext.dev_get_port_count(dev,\n \t\t\t\t ark->user_data[dev->data->port_id]);\n \tark->num_ports = port_count;\n+\tark->num_queues = ark_api_num_queues_per_port(ark->mpurx.v, port_count);\n \n \tfor (p = 0; p < port_count; p++) {\n \t\tstruct rte_eth_dev *eth_dev;\n@@ -457,7 +458,18 @@ eth_ark_dev_init(struct rte_eth_dev *dev)\n \t\t}\n \n \t\teth_dev->device = &pci_dev->device;\n-\t\teth_dev->data->dev_private = ark;\n+\t\t/* Device requires new dev_private data */\n+\t\teth_dev->data->dev_private =\n+\t\t\trte_zmalloc_socket(name,\n+\t\t\t\t\t   sizeof(struct ark_adapter),\n+\t\t\t\t\t   RTE_CACHE_LINE_SIZE,\n+\t\t\t\t\t   rte_socket_id());\n+\n+\t\tmemcpy(eth_dev->data->dev_private, ark,\n+\t\t       sizeof(struct ark_adapter));\n+\t\tark = eth_dev->data->dev_private;\n+\t\tark->qbase = p * ark->num_queues;\n+\n \t\teth_dev->dev_ops = ark->eth_dev->dev_ops;\n \t\teth_dev->tx_pkt_burst = ark->eth_dev->tx_pkt_burst;\n \t\teth_dev->rx_pkt_burst = ark->eth_dev->rx_pkt_burst;\ndiff --git a/drivers/net/ark/ark_ethdev_rx.c b/drivers/net/ark/ark_ethdev_rx.c\nindex cbc0416bc2..38bc69dff4 100644\n--- a/drivers/net/ark/ark_ethdev_rx.c\n+++ b/drivers/net/ark/ark_ethdev_rx.c\n@@ -68,7 +68,7 @@ struct ark_rx_queue {\n static int\n eth_ark_rx_hw_setup(struct rte_eth_dev *dev,\n \t\t    struct ark_rx_queue *queue,\n-\t\t    uint16_t rx_queue_id __rte_unused, uint16_t rx_queue_idx)\n+\t\t    uint16_t rx_queue_idx)\n {\n \trte_iova_t queue_base;\n \trte_iova_t phys_addr_q_base;\n@@ -124,7 +124,7 @@ eth_ark_dev_rx_queue_setup(struct rte_eth_dev *dev,\n \tuint32_t i;\n \tint status;\n \n-\tint qidx = queue_idx;\n+\tint qidx = ark->qbase + queue_idx;\n \n \t/* We may already be setup, free memory prior to re-allocation */\n \tif (dev->data->rx_queues[queue_idx] != NULL) {\n@@ -215,7 +215,7 @@ eth_ark_dev_rx_queue_setup(struct rte_eth_dev *dev,\n \t}\n \t/* MPU Setup */\n \tif (status == 0)\n-\t\tstatus = eth_ark_rx_hw_setup(dev, queue, qidx, queue_idx);\n+\t\tstatus = eth_ark_rx_hw_setup(dev, queue, queue_idx);\n \n \tif (unlikely(status != 0)) {\n \t\tstruct rte_mbuf **mbuf;\ndiff --git a/drivers/net/ark/ark_ethdev_tx.c b/drivers/net/ark/ark_ethdev_tx.c\nindex 5940a592a2..4792754f19 100644\n--- a/drivers/net/ark/ark_ethdev_tx.c\n+++ b/drivers/net/ark/ark_ethdev_tx.c\n@@ -229,7 +229,7 @@ eth_ark_tx_queue_setup(struct rte_eth_dev *dev,\n \tstruct ark_tx_queue *queue;\n \tint status;\n \n-\tint qidx = queue_idx;\n+\tint qidx = ark->qbase + queue_idx;\n \n \tif (!rte_is_power_of_2(nb_desc)) {\n \t\tARK_PMD_LOG(ERR,\ndiff --git a/drivers/net/ark/ark_global.h b/drivers/net/ark/ark_global.h\nindex 71d0b53e03..176fbcda17 100644\n--- a/drivers/net/ark/ark_global.h\n+++ b/drivers/net/ark/ark_global.h\n@@ -112,7 +112,11 @@ struct ark_adapter {\n \tark_pkt_chkr_t pc;\n \tark_pkt_dir_t pd;\n \n+\t/* For single function, multiple ports */\n \tint num_ports;\n+\tuint16_t qbase;\n+\tuint16_t num_queues;\n+\n \tbool isvf;\n \n \t/* Packet generator/checker args */\n",
    "prefixes": [
        "2/3"
    ]
}