get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 111767,
    "url": "https://patches.dpdk.org/api/patches/111767/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20220525004028.24938-3-pagupta@vmware.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<20220525004028.24938-3-pagupta@vmware.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20220525004028.24938-3-pagupta@vmware.com",
    "date": "2022-05-25T00:40:21",
    "name": "[v6,2/9] net/vmxnet3: implement RETA query and RETA update",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "06069eb914c14269dae64c16b5f9855d81e04da3",
    "submitter": {
        "id": 2677,
        "url": "https://patches.dpdk.org/api/people/2677/?format=api",
        "name": "Pankaj Gupta",
        "email": "pagupta@vmware.com"
    },
    "delegate": {
        "id": 3961,
        "url": "https://patches.dpdk.org/api/users/3961/?format=api",
        "username": "arybchenko",
        "first_name": "Andrew",
        "last_name": "Rybchenko",
        "email": "andrew.rybchenko@oktetlabs.ru"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20220525004028.24938-3-pagupta@vmware.com/mbox/",
    "series": [
        {
            "id": 23134,
            "url": "https://patches.dpdk.org/api/series/23134/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=23134",
            "date": "2022-05-25T00:40:20",
            "name": "net/vmxnet3: support versions 5 and 6",
            "version": 6,
            "mbox": "https://patches.dpdk.org/series/23134/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/111767/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/111767/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 24B66A0545;\n\tWed, 25 May 2022 02:41:24 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 0C17642B6E;\n\tWed, 25 May 2022 02:41:04 +0200 (CEST)",
            "from NAM10-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam10on2046.outbound.protection.outlook.com [40.107.93.46])\n by mails.dpdk.org (Postfix) with ESMTP id E6B83400D6\n for <dev@dpdk.org>; Wed, 25 May 2022 02:40:53 +0200 (CEST)",
            "from BYAPR05MB5624.namprd05.prod.outlook.com (2603:10b6:a03:1d::13)\n by MWHPR0501MB3753.namprd05.prod.outlook.com (2603:10b6:301:79::26)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5293.13; Wed, 25 May\n 2022 00:40:49 +0000",
            "from BYAPR05MB5624.namprd05.prod.outlook.com\n ([fe80::49ad:2ac7:16c0:51c8]) by BYAPR05MB5624.namprd05.prod.outlook.com\n ([fe80::49ad:2ac7:16c0:51c8%6]) with mapi id 15.20.5293.013; Wed, 25 May 2022\n 00:40:48 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=cho/755sQV0avSprth1bx8hLBcdWx5exLTTwz8+z9yVnvLTqdEQ0ZfOa/3gwhdaLR3sLLaeKgbkLI0aUjIvQZfe9fnX5bIvDHa5egpQah9YYKk+rgKJkRcJV0HQEEibcBQtvtd0bPVS7BpAOGBUaNk+aTcz2uB1dArnAomSC1z7tl5FG1cN55q1udYCsH+0Pq4ScUAVCPwbQ3eDm/81LcgCm1sHIsVn0n4Xp4F5BPHUG5hGuyEanVzgBbmb5VT3nxMpYNUcKpgKJbN6f//MKPG8JIfXhP/K1b1zlBQfKRwRYmcxI5Dj8oVF5oDTN4/2y0daYOqS8HRfWu08vUEA0vA==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=1XfjfD+mTk2A8kK5ofGwjcdZO539L9riw4F+79FgZbo=;\n b=iLZgX+5JFq7HA7+6pxYPulRuclRxN1Z9RQcE+WE5xXeuoOu5TxBnd+ullrF28l745Vt6hNbYyi9xkvqMm1gD9+E1Ffsj96vcV06wJRHyQPYyH7hlVLUqBGqD/JMhMyZSlyIywxDWn5NYY1k2e1KHwnaDrQ4lX8piSw+nptgoSrHoSogxtpWGoLgUzZTJ8fiGxPS6+A/YK0nbHz0T+v4RKgmNwXTQKd//aTqwVE4UqiiTHSTNgKUYYW9TYuSuBiKOpIdtzcKsfRdr1jfIeh81419MBVv++QCu0+ZRpfFPxDqCtBCCo2JFolC2ZSq5KQduWOPXlfQ7xcAlhNQjr3FPtQ==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=vmware.com; dmarc=pass action=none header.from=vmware.com;\n dkim=pass header.d=vmware.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=1XfjfD+mTk2A8kK5ofGwjcdZO539L9riw4F+79FgZbo=;\n b=ca+8YHGftcxQLaO8LJrMbujKYyYv7ELSVAC9TpZU9/NQekWob5FxzHM/EltLrpvD2oHXEQEZtR56BUs14d4iVWrtVESsMHBfC2I+vugVdjcXXb+yDWRXXSL4dms9/qw6pQxQ6o+oaO3UHTAyQ5NH4HRTifFvERsi3TbWF0nncM8=",
        "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=vmware.com;",
        "From": "Pankaj Gupta <pagupta@vmware.com>",
        "To": "jbehrens@vmware.com",
        "Cc": "dev@dpdk.org,\n\tpagupta@vmware.com",
        "Subject": "[PATCH v6 2/9] net/vmxnet3: implement RETA query and RETA update",
        "Date": "Tue, 24 May 2022 17:40:21 -0700",
        "Message-Id": "<20220525004028.24938-3-pagupta@vmware.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20220525004028.24938-1-pagupta@vmware.com>",
        "References": "<20220525004028.24938-1-pagupta@vmware.com>",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "SJ0PR05CA0056.namprd05.prod.outlook.com\n (2603:10b6:a03:33f::31) To BYAPR05MB5624.namprd05.prod.outlook.com\n (2603:10b6:a03:1d::13)",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "9ebd9cde-f5a9-4647-db48-08da3de73622",
        "X-MS-TrafficTypeDiagnostic": "MWHPR0501MB3753:EE_",
        "X-Microsoft-Antispam-PRVS": "\n <MWHPR0501MB3753396A446EDA49391754BEC9D69@MWHPR0501MB3753.namprd05.prod.outlook.com>",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n x2SUwjBI3/psry8UwQwIRUfqQxR/J12WQ6g4pviLKS9esZYPeUZq0jADyL9iQfXNWKE9FL0AAoMh3hz+jRnKB2zO/JwTHEnGjolYNOMjW21EMZPzPQTnLtLrCzBSZNfw9FQOmJNQKmHOtjfbl1PN++ka50RjJAn+5tlVP1EgWpQdT6s96ZxD1xW4vm6Y/t3fmNk/jrbDqa1kX78FjTQ9nTBq5hWx7YrqkuHKEt2SsweL+MbKA5AfisUBnvpqUyummaRoJYFhRz74T1zn+Dvc0JpcBoSkacfegez+yj7jokOqxVA71diWY8kaxgBwkHfKUOV8Tazjc245fkAQjBuyq3CrXfWe2RAD3E1BF9WGyTCoS3uqcXI2mQ/Bj9ImUzmWHScZxed+8K8OBcciDEIgP0BH6Y+qf8JpMnlW8vFcUPVcS9HHMnuuP/V184ynDrIEX12DHC23A3kEFLKkIKUKwo2xYERAe3TazBpfOJSmjDMWxROf74vn0Evq6XtAxe/FKqwtr4jGioCfYV/JccXj65TqeEPSMR+vD6h5ko6SCpNeZPlEcuoVOI8/lcUKogJG3IUwlsXUvkyuJBy2jlY1uiUTxB46ktQ2yPZjEMn4l08z9AlgcBdD/Ilag+ldnfzYmH/B8r9T3ZZWD5egJHlCK6tqhDWW2L5dAQySFUrhP4UA8EkuBN0wXoC/CwON7xhkICDSZgvvY9FsNY+EW8vDRg==",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:BYAPR05MB5624.namprd05.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230001)(4636009)(366004)(186003)(52116002)(1076003)(2616005)(6666004)(8676002)(6506007)(316002)(66476007)(66556008)(66946007)(38100700002)(6512007)(34206002)(4326008)(107886003)(508600001)(6486002)(6636002)(37006003)(36756003)(26005)(38350700002)(2906002)(5660300002)(83380400001)(15650500001)(86362001)(8936002);\n DIR:OUT; SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n 4bdQzkFUL+izsMkI74ZELKEInMktCG9k53qslgtV7gQAd8aPkCqt90SzTe2r1hgDGE22gOUDNHpxOvq9j5JaBP1mI5+3GaN+/EY0DPrGSsIAmAiuDcU1Gi45ge25pV/TRgxqo0YR10IiGhsvxVHcSObDlja+oer+jITg1UFk9wGd/qX7F4DGpyrq1tx0ilXQEb79aAnkZX6xCd6lqbRFN97fio4JsLTvsP/T4E5w6owqnly/nT9mEp/pSsP6A+Zp0LffwLG7dXq3OnY1x4fur3Y/L5AeQbCcJvhiUWziHCkp7sfG48t6H6/obovq0R5ns27d7nDzh7gIS4wuGo/htlSy30Q/yTaCu8Ah5+uDlTrqTnRvz68SXIloD+Y9rldzppSz3xx//C8SIwqUSRNqxV7lcOie5bqbSFP8bPDVXHOXrzqQpgBlgIRvFDcqPYw1eJ6SVfm+4aS20P/kTDxg10d+MUrmLeC4BcqrGgZLSaJ94BpAkwA+Swy/AvJqy937rC2um8lLu10GMpM4ETcIgIev3Dbx1nAoqP+kcQ5wNqHGtE/Hlfcg/uHQi1T8t1YxY+Y4nyyE29X7bWn7TtPm3kVhB8lN30vbFG3SbAvMC1WlY3eKF4aJL6AlouI95+zLxu+saXHzjAp9+W4rdRE4uwX5zgJZ1y6zoB0FPR2UC26hU/T3c9o4DWi5pdubsp5qAH0Ol3RYqa6FvD/Nm3mXpXsi4FTjmKvacZjPJ92diyJD6dfAcvfPWX5JDQ0srbUgPfp3m1I2AVTiAsiyGI9v0zdYMgY9dOP8ia3I/XvxhfXlrlJh1pC5Sy6/8CnroAEUunMBOfMEW6oQirgKoNtvCzd559qMTbLYmFm+uMDvLOW1k2NqvjBGhFPli40fOr8s/G+7eU2J9jnvwB7wnWO7MFFpq1i6zIPMRUbslPmbcuBwnJscAQo0vQ89kuSke9yktM3L4U3M4K8a33KIGhLksrD15bs56ZMR8jIahhNAt4ihQSbLx0gnT7tJkqAaaV/C8NRDOUmfN8CRL5acTmHr6Pd/OX7sARcuwYjhYWmfjzYOiOK22UdAY/EGIs4scupVx6g0C6JZPF5qKmMQh0qMHKUXei1zMyO7D9u4pO94woIPJ07ywBuhULPzn5Yk0Ac26QGw13oU4NEDDUHItGfKNbbYAzgwsDM9TlaU0VD/uVfAe4LrvWhaz3aeL8jzCOClsRS0rF6C6cKIv+FrVxgA58spENeq+BdYKvxGNYPtkFLcJ+Vr0NSdzVVOPJ/Olv52Ef7C4fD693j/knWdWpZCqvEj29Lk8MASfbVbFSXgYC2QZMuPVwfOTCUqkpW3o69Sq8ZQSxVY2Wcw4U5rOLK40u3daRg+l33yU7dTwmo8bMj9K9NCC6zLlv7zKiXNlijAYIjYAJscDt8SZ2WCKDTR6mL4qaK0KEACGd/muBdAEJrLSPCOtEFw/i6R3FOeEaIv+IYo3qPkOp317PnP4J1HkCC3F4N/wgCxo/N63V4bwgGHTGULRWP5DQTP8tC8K/NXtMtVcxMf8arev+WV2bWJoLk829ayw3oQelxqOrJZoiLvCMzI1tm0QRFIHMQ/LoYON+pojLYpYXDtZMnCDR6LvUFUBrOsqPuWby4PT/42fFvgd3w4kiImV15tMwFrCH6ulcufgG5mhX73NMS9ly1HHn+9tKXtCMgTJegdzYXObZTvkzWEMoQvih2Rn9K2/NAQxa1w75Xa3ksQuBbWUwXFdw==",
        "X-OriginatorOrg": "vmware.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 9ebd9cde-f5a9-4647-db48-08da3de73622",
        "X-MS-Exchange-CrossTenant-AuthSource": "BYAPR05MB5624.namprd05.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "25 May 2022 00:40:48.2433 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n xHPOvJg2Rq/SrFRAPp0buAkYIXq37B9lELhg+G4co/PppeJPtwHZtWuuqaUcNJqmj+ULi5PtjKUVmvBlju5sSg==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MWHPR0501MB3753",
        "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": "Add RETA query and RETA update support for VMXNET3.\n\nTested, using testpmd, for different hardware versions on ESXi 7.0\nUpdate 2.\n\nSigned-off-by: Pankaj Gupta <pagupta@vmware.com>\nReviewed-by: Jochen Behrens <jbehrens@vmware.com>\n---\n doc/guides/rel_notes/release_21_08.rst |  2 +\n drivers/net/vmxnet3/vmxnet3_ethdev.c   | 67 ++++++++++++++++++++++++++\n 2 files changed, 69 insertions(+)",
    "diff": "diff --git a/doc/guides/rel_notes/release_21_08.rst b/doc/guides/rel_notes/release_21_08.rst\nindex cc472d7a05..4027bd4390 100644\n--- a/doc/guides/rel_notes/release_21_08.rst\n+++ b/doc/guides/rel_notes/release_21_08.rst\n@@ -131,6 +131,8 @@ New Features\n \n * **Added vmxnet3 version 5 support.**\n \n+* **Added RETA query and RETA update support for vmxnet3.**\n+\n \n API Changes\n -----------\ndiff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c\nindex a7e1e5fef5..d5f9903946 100644\n--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c\n+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c\n@@ -95,6 +95,14 @@ static int vmxnet3_mac_addr_set(struct rte_eth_dev *dev,\n \t\t\t\t struct rte_ether_addr *mac_addr);\n static void vmxnet3_process_events(struct rte_eth_dev *dev);\n static void vmxnet3_interrupt_handler(void *param);\n+static int\n+vmxnet3_rss_reta_update(struct rte_eth_dev *dev,\n+\t\t\tstruct rte_eth_rss_reta_entry64 *reta_conf,\n+\t\t\tuint16_t reta_size);\n+static int\n+vmxnet3_rss_reta_query(struct rte_eth_dev *dev,\n+\t\t       struct rte_eth_rss_reta_entry64 *reta_conf,\n+\t\t       uint16_t reta_size);\n static int vmxnet3_dev_rx_queue_intr_enable(struct rte_eth_dev *dev,\n \t\t\t\t\t\tuint16_t queue_id);\n static int vmxnet3_dev_rx_queue_intr_disable(struct rte_eth_dev *dev,\n@@ -137,6 +145,8 @@ static const struct eth_dev_ops vmxnet3_eth_dev_ops = {\n \t.tx_queue_release     = vmxnet3_dev_tx_queue_release,\n \t.rx_queue_intr_enable = vmxnet3_dev_rx_queue_intr_enable,\n \t.rx_queue_intr_disable = vmxnet3_dev_rx_queue_intr_disable,\n+\t.reta_update          = vmxnet3_rss_reta_update,\n+\t.reta_query           = vmxnet3_rss_reta_query,\n };\n \n struct vmxnet3_xstats_name_off {\n@@ -1696,3 +1706,60 @@ RTE_PMD_REGISTER_PCI_TABLE(net_vmxnet3, pci_id_vmxnet3_map);\n RTE_PMD_REGISTER_KMOD_DEP(net_vmxnet3, \"* igb_uio | uio_pci_generic | vfio-pci\");\n RTE_LOG_REGISTER_SUFFIX(vmxnet3_logtype_init, init, NOTICE);\n RTE_LOG_REGISTER_SUFFIX(vmxnet3_logtype_driver, driver, NOTICE);\n+\n+static int\n+vmxnet3_rss_reta_update(struct rte_eth_dev *dev,\n+\t\t\tstruct rte_eth_rss_reta_entry64 *reta_conf,\n+\t\t\tuint16_t reta_size)\n+{\n+\tint i, idx, shift;\n+\tstruct vmxnet3_hw *hw = dev->data->dev_private;\n+\tstruct VMXNET3_RSSConf *dev_rss_conf = hw->rss_conf;\n+\n+\tif (reta_size != dev_rss_conf->indTableSize) {\n+\t\tPMD_DRV_LOG(ERR,\n+\t\t\t\"The size of hash lookup table configured (%d) doesn't match \"\n+\t\t\t\"the supported number (%d)\",\n+\t\t\treta_size, dev_rss_conf->indTableSize);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\tfor (i = 0; i < reta_size; i++) {\n+\t\tidx = i / RTE_ETH_RETA_GROUP_SIZE;\n+\t\tshift = i % RTE_ETH_RETA_GROUP_SIZE;\n+\t\tif (reta_conf[idx].mask & RTE_BIT64(shift))\n+\t\t\tdev_rss_conf->indTable[i] = (uint8_t)reta_conf[idx].reta[shift];\n+\t}\n+\n+\tVMXNET3_WRITE_BAR1_REG(hw, VMXNET3_REG_CMD,\n+\t\t\t\tVMXNET3_CMD_UPDATE_RSSIDT);\n+\n+\treturn 0;\n+}\n+\n+static int\n+vmxnet3_rss_reta_query(struct rte_eth_dev *dev,\n+\t\t       struct rte_eth_rss_reta_entry64 *reta_conf,\n+\t\t       uint16_t reta_size)\n+{\n+\tint i, idx, shift;\n+\tstruct vmxnet3_hw *hw = dev->data->dev_private;\n+\tstruct VMXNET3_RSSConf *dev_rss_conf = hw->rss_conf;\n+\n+\tif (reta_size != dev_rss_conf->indTableSize) {\n+\t\tPMD_DRV_LOG(ERR,\n+\t\t\t\"Size of requested hash lookup table (%d) doesn't \"\n+\t\t\t\"match the configured size (%d)\",\n+\t\t\treta_size, dev_rss_conf->indTableSize);\n+\t\treturn -EINVAL;\n+\t}\n+\n+\tfor (i = 0; i < reta_size; i++) {\n+\t\tidx = i / RTE_ETH_RETA_GROUP_SIZE;\n+\t\tshift = i % RTE_ETH_RETA_GROUP_SIZE;\n+\t\tif (reta_conf[idx].mask & RTE_BIT64(shift))\n+\t\t\treta_conf[idx].reta[shift] = dev_rss_conf->indTable[i];\n+\t}\n+\n+\treturn 0;\n+}\n",
    "prefixes": [
        "v6",
        "2/9"
    ]
}