get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 130139,
    "url": "http://patches.dpdk.org/api/patches/130139/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230811085805.441256-27-ndabilpuram@marvell.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": "<20230811085805.441256-27-ndabilpuram@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230811085805.441256-27-ndabilpuram@marvell.com",
    "date": "2023-08-11T08:58:01",
    "name": "[27/31] net/cnxk: fix usage of mbuf rearm data",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "10d115f20e94df53879ded5869ce9ea824652741",
    "submitter": {
        "id": 1202,
        "url": "http://patches.dpdk.org/api/people/1202/?format=api",
        "name": "Nithin Dabilpuram",
        "email": "ndabilpuram@marvell.com"
    },
    "delegate": {
        "id": 310,
        "url": "http://patches.dpdk.org/api/users/310/?format=api",
        "username": "jerin",
        "first_name": "Jerin",
        "last_name": "Jacob",
        "email": "jerinj@marvell.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20230811085805.441256-27-ndabilpuram@marvell.com/mbox/",
    "series": [
        {
            "id": 29177,
            "url": "http://patches.dpdk.org/api/series/29177/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=29177",
            "date": "2023-08-11T08:57:35",
            "name": "[01/31] common/cnxk: add aura ref count mechanism",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/29177/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/130139/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/130139/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 66E7B43032;\n\tFri, 11 Aug 2023 11:00:42 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 812A24329E;\n\tFri, 11 Aug 2023 10:59:39 +0200 (CEST)",
            "from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com\n [67.231.148.174])\n by mails.dpdk.org (Postfix) with ESMTP id C1F1E43247\n for <dev@dpdk.org>; Fri, 11 Aug 2023 10:59:36 +0200 (CEST)",
            "from pps.filterd (m0045849.ppops.net [127.0.0.1])\n by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id\n 37AMjx5j001610 for <dev@dpdk.org>; Fri, 11 Aug 2023 01:59:36 -0700",
            "from dc5-exch02.marvell.com ([199.233.59.182])\n by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3sd8yp9rbj-2\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT)\n for <dev@dpdk.org>; Fri, 11 Aug 2023 01:59:35 -0700",
            "from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com\n (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.48;\n Fri, 11 Aug 2023 01:59:31 -0700",
            "from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com\n (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.48 via Frontend\n Transport; Fri, 11 Aug 2023 01:59:31 -0700",
            "from hyd1588t430.caveonetworks.com (unknown [10.29.52.204])\n by maili.marvell.com (Postfix) with ESMTP id BEF6F3F706A;\n Fri, 11 Aug 2023 01:59:28 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n h=from : to : cc :\n subject : date : message-id : in-reply-to : references : mime-version :\n content-transfer-encoding : content-type; s=pfpt0220;\n bh=aUsexLW9prYlPTFSoQi+MpR/ebE4AZJounnNyPbSNOY=;\n b=UjBZD/IkEARBmCAE2y4pLuf1qR915Wt7LOZC49sjOS6vwNR8Lj1U1Wtosfj7xZHTMEz1\n nFT9VHA6q3hWIbwx2A4ppzshw5ZHFGqPkUNA2XdFbDq24th85sMPq+xtUXc20oS1yDiU\n ZdTW+WKQl7U8c5GsJJeuExqxIw1anEkl/lcfiCB1Dsl4nGYcfvd74u7tLsl0sdqlzYp3\n X7B92Hux0Y8D7+um6Vi9WOrGqkLZ+/xP18VxBPUl6vBe9etOk1MmIhYMa1CBPNvjzcM+\n Db5l5y+bVwfJvGo9N0KFBwcBvbuiXzjLTq6Hgxcoj65+HmjlHbX+m2yVaLcxNc4wjynx Wg==",
        "From": "Nithin Dabilpuram <ndabilpuram@marvell.com>",
        "To": "Nithin Dabilpuram <ndabilpuram@marvell.com>, Kiran Kumar K\n <kirankumark@marvell.com>, Sunil Kumar Kori <skori@marvell.com>, Satha Rao\n <skoteshwar@marvell.com>",
        "CC": "<jerinj@marvell.com>, <dev@dpdk.org>, Akhil Goyal <gakhil@marvell.com>",
        "Subject": "[PATCH 27/31] net/cnxk: fix usage of mbuf rearm data",
        "Date": "Fri, 11 Aug 2023 14:28:01 +0530",
        "Message-ID": "<20230811085805.441256-27-ndabilpuram@marvell.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20230811085805.441256-1-ndabilpuram@marvell.com>",
        "References": "<20230811085805.441256-1-ndabilpuram@marvell.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Proofpoint-ORIG-GUID": "6OeycW9aU6TASo3QP3v9GYz4MKIWyRWz",
        "X-Proofpoint-GUID": "6OeycW9aU6TASo3QP3v9GYz4MKIWyRWz",
        "X-Proofpoint-Virus-Version": "vendor=baseguard\n engine=ICAP:2.0.267,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26\n definitions=2023-08-10_20,2023-08-10_01,2023-05-22_02",
        "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": "From: Akhil Goyal <gakhil@marvell.com>\n\nmbuf->rearm_data is a zero length array and it is being\nused to set data from that location. This shows an error\nin static code analysis.\nHence it is typecast to a pointer which can be used to\nset values accordingly.\n\nFixes: c062f5726f61 (\"net/cnxk: support IP reassembly\")\n\nSigned-off-by: Akhil Goyal <gakhil@marvell.com>\n---\n drivers/net/cnxk/cn10k_rx.h | 17 ++++++++++++-----\n 1 file changed, 12 insertions(+), 5 deletions(-)",
    "diff": "diff --git a/drivers/net/cnxk/cn10k_rx.h b/drivers/net/cnxk/cn10k_rx.h\nindex 55ccf2023c..982fd26045 100644\n--- a/drivers/net/cnxk/cn10k_rx.h\n+++ b/drivers/net/cnxk/cn10k_rx.h\n@@ -510,6 +510,7 @@ nix_sec_meta_to_mbuf(uint64_t cq_w1, uint64_t cq_w5, uintptr_t inb_sa,\n \t\t(const struct cpt_parse_hdr_s *)cpth;\n \tuint64_t mbuf_init = vgetq_lane_u64(*rearm, 0);\n \tstruct cn10k_inb_priv_data *inb_priv;\n+\tuintptr_t p;\n \n \t/* Clear checksum flags */\n \t*ol_flags &= ~(RTE_MBUF_F_RX_L4_CKSUM_MASK |\n@@ -530,7 +531,8 @@ nix_sec_meta_to_mbuf(uint64_t cq_w1, uint64_t cq_w5, uintptr_t inb_sa,\n \t\t\t/* First frag len */\n \t\t\tinner->pkt_len = vgetq_lane_u16(*rx_desc_field1, 2);\n \t\t\tinner->data_len = vgetq_lane_u16(*rx_desc_field1, 4);\n-\t\t\t*(uint64_t *)(&inner->rearm_data) = mbuf_init;\n+\t\t\tp = (uintptr_t)&inner->rearm_data;\n+\t\t\t*(uint64_t *)p = mbuf_init;\n \n \t\t\t/* Reassembly success */\n \t\t\tnix_sec_reassemble_frags(hdr, inner, cq_w1, cq_w5, mbuf_init);\n@@ -545,7 +547,7 @@ nix_sec_meta_to_mbuf(uint64_t cq_w1, uint64_t cq_w5, uintptr_t inb_sa,\n \t\t\t\t\t\t\t *rx_desc_field1, 4);\n \n \t\t\t/* Data offset might be updated */\n-\t\t\tmbuf_init = *(uint64_t *)(&inner->rearm_data);\n+\t\t\tmbuf_init = *(uint64_t *)p;\n \t\t\t*rearm = vsetq_lane_u64(mbuf_init, *rearm, 0);\n \t\t} else {\n \t\t\t/* Reassembly failure */\n@@ -628,6 +630,7 @@ nix_cqe_xtract_mseg(const union nix_rx_parse_u *rx, struct rte_mbuf *mbuf,\n \tuint64_t cq_w1;\n \tint64_t len;\n \tuint64_t sg;\n+\tuintptr_t p;\n \n \tcq_w1 = *(const uint64_t *)rx;\n \tif (flags & NIX_RX_REAS_F)\n@@ -703,7 +706,8 @@ nix_cqe_xtract_mseg(const union nix_rx_parse_u *rx, struct rte_mbuf *mbuf,\n \n \t\tmbuf->data_len = sg_len;\n \t\tsg = sg >> 16;\n-\t\t*(uint64_t *)(&mbuf->rearm_data) = rearm & ~0xFFFF;\n+\t\tp = (uintptr_t)&mbuf->rearm_data;\n+\t\t*(uint64_t *)p = rearm & ~0xFFFF;\n \t\tnb_segs--;\n \t\tiova_list++;\n \n@@ -753,7 +757,8 @@ nix_cqe_xtract_mseg(const union nix_rx_parse_u *rx, struct rte_mbuf *mbuf,\n \t\t\thead->nb_segs = nb_segs;\n \t\t}\n \t\tmbuf = next_frag;\n-\t\t*(uint64_t *)(&mbuf->rearm_data) = rearm + ldptr;\n+\t\tp = (uintptr_t)&mbuf->rearm_data;\n+\t\t*(uint64_t *)p = rearm + ldptr;\n \t\tmbuf->data_len = (sg & 0xFFFF) - ldptr -\n \t\t\t\t (flags & NIX_RX_OFFLOAD_TSTAMP_F ?\n \t\t\t\t  CNXK_NIX_TIMESYNC_RX_OFFSET : 0);\n@@ -781,6 +786,7 @@ cn10k_nix_cqe_to_mbuf(const struct nix_cqe_hdr_s *cq, const uint32_t tag,\n \tconst uint64_t w1 = *(const uint64_t *)rx;\n \tuint16_t len = rx->pkt_lenm1 + 1;\n \tuint64_t ol_flags = 0;\n+\tuintptr_t p;\n \n \tif (flag & NIX_RX_OFFLOAD_PTYPE_F)\n \t\tmbuf->packet_type = nix_ptype_get(lookup_mem, w1);\n@@ -818,7 +824,8 @@ cn10k_nix_cqe_to_mbuf(const struct nix_cqe_hdr_s *cq, const uint32_t tag,\n \t\tmbuf->ol_flags = ol_flags;\n \t\tmbuf->pkt_len = len;\n \t\tmbuf->data_len = len;\n-\t\t*(uint64_t *)(&mbuf->rearm_data) = val;\n+\t\tp = (uintptr_t)&mbuf->rearm_data;\n+\t\t*(uint64_t *)p = val;\n \t}\n \n \tif (flag & NIX_RX_MULTI_SEG_F)\n",
    "prefixes": [
        "27/31"
    ]
}