get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 58693,
    "url": "http://patches.dpdk.org/api/patches/58693/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1567705278-10558-2-git-send-email-Pavel.Belous@aquantia.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": "<1567705278-10558-2-git-send-email-Pavel.Belous@aquantia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1567705278-10558-2-git-send-email-Pavel.Belous@aquantia.com",
    "date": "2019-09-05T17:41:44",
    "name": "[1/3] net/atlantic: exclude MACSEC counters from xstats",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "5fd4ef9e9b39be31b159e8adeb388fb5f6e7ce03",
    "submitter": {
        "id": 1426,
        "url": "http://patches.dpdk.org/api/people/1426/?format=api",
        "name": "Pavel Belous",
        "email": "Pavel.Belous@aquantia.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/1567705278-10558-2-git-send-email-Pavel.Belous@aquantia.com/mbox/",
    "series": [
        {
            "id": 6265,
            "url": "http://patches.dpdk.org/api/series/6265/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=6265",
            "date": "2019-09-05T17:41:42",
            "name": "net/atlantic: Atlantic PMD updates",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/6265/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/58693/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/58693/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 1A02A1F08A;\n\tThu,  5 Sep 2019 19:41:50 +0200 (CEST)",
            "from NAM02-CY1-obe.outbound.protection.outlook.com\n\t(mail-eopbgr760078.outbound.protection.outlook.com [40.107.76.78])\n\tby dpdk.org (Postfix) with ESMTP id 99AB11F074;\n\tThu,  5 Sep 2019 19:41:45 +0200 (CEST)",
            "from CY4PR1101MB2183.namprd11.prod.outlook.com (10.172.76.20) by\n\tCY4SPR00MB057.namprd11.prod.outlook.com (10.173.60.151) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n\t15.20.2241.14; Thu, 5 Sep 2019 17:41:44 +0000",
            "from CY4PR1101MB2183.namprd11.prod.outlook.com\n\t([fe80::4dee:fb50:cc75:fbde]) by\n\tCY4PR1101MB2183.namprd11.prod.outlook.com\n\t([fe80::4dee:fb50:cc75:fbde%6]) with mapi id 15.20.2199.027;\n\tThu, 5 Sep 2019 17:41:44 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n\tb=aVm391v8bheRkcE830WnnmpIa6+FQ8CKwuvdBtMvUK+lUUXiHKkIrMguMj0jPtqxMeaIPAQ3njcypBpqF8S707m0e7K4h5idRUsFKpUDV7rLts2GITVGgJtkqCGduK1nwR119fXGMco+WTf7aS2t7KpvTzixOlgpPLrYvr6fOW+kfxFoh+gEGyO8hpDNLjYYG4GIoEfVHPTxoGIJHjal/B5I8KKLAK2EAdDqwZD56qU0YjW7cmQxyxsWxjeX6U/KiFf58UDnhulE73KAbwuZXFSmChXUJBMbZ3IrPtVq4PgtQGaOVmcQXitcQnXgaNw6abUwMoXFd7bi9OXFBThfOg==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector9901;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=Ry6RHIEJ1wRo25HcCKoBqcDGv5GZbd4X5Wccr7Fz9as=;\n\tb=QGv41HkxjrESr3ZaL6k4TskqjI5Jse8dDhhooGRDDk7Oe26hDCMMgv5Lpdv+d1PSti+REPkGWQ0dO/RNMac5ENjoBs9anI6KJUYbQjV1DZkMAH5uVQ6hLkp2/Qr9HSKqzWUgW1eKUXAZlmYP3Ia+nmrStUiezcSc4MXm77RfbjyWnKyBv43MIDnoIAAQKZDHza5B3OC5ECqcNJMQeoP4X7/hk7gfYjca/7vAOhUraQwYMyHlnQAvVjdljS2kcaG/oTrbieNBqqm1JQYYpK0DvI7YT+wsd4zLeIp8lkgKEsc6GY9K6Ug9UNWjjG/SFsCDr5euP7zG4LUIBwFDZXtxcg==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=aquantia.com;\n\tdmarc=pass action=none header.from=aquantia.com; \n\tdkim=pass header.d=aquantia.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=AQUANTIA1COM.onmicrosoft.com;\n\ts=selector2-AQUANTIA1COM-onmicrosoft-com; \n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=Ry6RHIEJ1wRo25HcCKoBqcDGv5GZbd4X5Wccr7Fz9as=;\n\tb=1dP60ZXYGz303aj54MnBHAPplkglEZoBhF0EanYSJpwzQsvpwvkaXgwk45N7qU0qGfmC/oulQ3OUXygpAtj4sA614bpUKP+ReN3eDMU8CUkgEOVuJThvy6Wog1PclkaRJdnvKgJWRJJzPu9A7jda0WROxqVD5QeXRyC6x7E9lG8=",
        "From": "Pavel Belous <Pavel.Belous@aquantia.com>",
        "To": "Ferruh Yigit <ferruh.yigit@intel.com>",
        "CC": "\"dev@dpdk.org\" <dev@dpdk.org>, Igor Russkikh <Igor.Russkikh@aquantia.com>,\n\tCorey Melton <comelton@cisco.com>,\n\tPavel Belous <Pavel.Belous@aquantia.com>, \n\t\"stable@dpdk.org\" <stable@dpdk.org>",
        "Thread-Topic": "[PATCH 1/3] net/atlantic: exclude MACSEC counters from xstats",
        "Thread-Index": "AQHVZBEvlA2Do9ZnqEOQxoEr3Cw3JA==",
        "Date": "Thu, 5 Sep 2019 17:41:44 +0000",
        "Message-ID": "<1567705278-10558-2-git-send-email-Pavel.Belous@aquantia.com>",
        "References": "<1567705278-10558-1-git-send-email-Pavel.Belous@aquantia.com>",
        "In-Reply-To": "<1567705278-10558-1-git-send-email-Pavel.Belous@aquantia.com>",
        "Accept-Language": "en-US",
        "Content-Language": "en-US",
        "X-MS-Has-Attach": "",
        "X-MS-TNEF-Correlator": "",
        "x-clientproxiedby": "HE1PR05CA0314.eurprd05.prod.outlook.com\n\t(2603:10a6:7:93::45) To CY4PR1101MB2183.namprd11.prod.outlook.com\n\t(2603:10b6:910:18::20)",
        "authentication-results": "spf=none (sender IP is )\n\tsmtp.mailfrom=Pavel.Belous@aquantia.com; ",
        "x-ms-exchange-messagesentrepresentingtype": "1",
        "x-mailer": "git-send-email 2.7.4",
        "x-originating-ip": "[95.79.108.179]",
        "x-ms-publictraffictype": "Email",
        "x-ms-office365-filtering-correlation-id": "100028ce-360e-42b6-1f43-08d732285183",
        "x-microsoft-antispam": "BCL:0; PCL:0;\n\tRULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(2017052603328)(7193020);\n\tSRVR:CY4SPR00MB057; ",
        "x-ms-traffictypediagnostic": "CY4SPR00MB057:",
        "x-ms-exchange-transport-forked": "True",
        "x-microsoft-antispam-prvs": "<CY4SPR00MB0576001E9A821D85614F1EFE1BB0@CY4SPR00MB057.namprd11.prod.outlook.com>",
        "x-ms-oob-tlc-oobclassifiers": "OLM:331;",
        "x-forefront-prvs": "015114592F",
        "x-forefront-antispam-report": "SFV:NSPM;\n\tSFS:(10009020)(376002)(136003)(346002)(366004)(396003)(39850400004)(199004)(189003)(4326008)(3846002)(66446008)(86362001)(64756008)(66556008)(66476007)(8676002)(305945005)(6916009)(6116002)(2906002)(7736002)(66946007)(6512007)(6436002)(14454004)(6486002)(66066001)(81166006)(8936002)(81156014)(478600001)(50226002)(25786009)(6506007)(256004)(486006)(2616005)(476003)(71200400001)(316002)(54906003)(11346002)(71190400001)(36756003)(26005)(76176011)(446003)(386003)(44832011)(102836004)(186003)(52116002)(53936002)(99286004)(5660300002);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:CY4SPR00MB057;\n\tH:CY4PR1101MB2183.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; \n\tPTR:InfoNoRecords; A:1; MX:1; ",
        "received-spf": "None (protection.outlook.com: aquantia.com does not designate\n\tpermitted sender hosts)",
        "x-ms-exchange-senderadcheck": "1",
        "x-microsoft-antispam-message-info": "VayVgUqr/ZriqdLmSnznmBPIq6NxNXvHFrLfRV2orslB9oU+rzHuAtm7irMTgJiUFqgAuhDn3ynXBWWUK3+p17dCfM6sVNL2H7pJPI48U12hT87g8Pikd1L2TTwXCc+e2PxoqlhJn6xvfA/oN3yKJdeTnub+oicM++mDFsk9m1nEh3wDQUNDUrdy9Wc8M7Ybguc3Tt2VueRZ1QgK9yjh0Vw6kNVgOxnmJfAd8xCIey8EZPqpNN9FXJBzeNOzsQXMwynTr5NbxJhEcIL7uvq9WGTWHK2vf5smL+oIssHDLmOjYoVmNtyue+feMfeARQJ+XtHWREVLlpeIxUPlFW4GVFpTBC63eYnkgENr4fO9EM4TzBOsTKqF0N2UgF00CUHAvU5KxfZQ1GFlSi1ME+EZA3wzPwx1jfpvKaZwVArAdUc=",
        "Content-Type": "text/plain; charset=\"iso-8859-1\"",
        "Content-Transfer-Encoding": "quoted-printable",
        "MIME-Version": "1.0",
        "X-OriginatorOrg": "aquantia.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "100028ce-360e-42b6-1f43-08d732285183",
        "X-MS-Exchange-CrossTenant-originalarrivaltime": "05 Sep 2019 17:41:44.6771\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-fromentityheader": "Hosted",
        "X-MS-Exchange-CrossTenant-id": "83e2e134-991c-4ede-8ced-34d47e38e6b1",
        "X-MS-Exchange-CrossTenant-mailboxtype": "HOSTED",
        "X-MS-Exchange-CrossTenant-userprincipalname": "b2G13CnwHJIZkp9WbGadf6QYFRRbS+E/86Kmak6PN9Xc8IXNpcDT8NWQMXnI60vwfk5BtNwGKwjmRonut0h38g==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY4SPR00MB057",
        "Subject": "[dpdk-dev] [PATCH 1/3] net/atlantic: exclude MACSEC counters from\n\txstats",
        "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": "From: Pavel Belous <Pavel.Belous@aquantia.com>\n\nCurrently, driver always return full set of xstats counters, including\nMACSEC counters. But this driver also supports AQC100 chips, which\ndoes not have MACSEC feature.\nThis fix adds checking for MACSEC availability (based on FW capability\nbits) and returns xstats without MACSEC counters if MACSEC feature\nis not available.\n\nFixes: 09d4dfa85359 (\"net/atlantic: implement MACsec statistics\")\nCc: stable@dpdk.org\nSigned-off-by: Pavel Belous <Pavel.Belous@aquantia.com>\nSigned-off-by: Igor Russkikh <igor.russkikh@aquantia.com>\n---\n drivers/net/atlantic/atl_ethdev.c | 52 ++++++++++++++++++++++++++++-----------\n 1 file changed, 38 insertions(+), 14 deletions(-)",
    "diff": "diff --git a/drivers/net/atlantic/atl_ethdev.c b/drivers/net/atlantic/atl_ethdev.c\nindex 3c1b349..178f7db 100644\n--- a/drivers/net/atlantic/atl_ethdev.c\n+++ b/drivers/net/atlantic/atl_ethdev.c\n@@ -993,20 +993,42 @@ atl_dev_stats_reset(struct rte_eth_dev *dev)\n }\n \n static int\n+atl_dev_xstats_get_count(struct rte_eth_dev *dev)\n+{\n+\tstruct atl_adapter *adapter =\n+\t\t(struct atl_adapter *)dev->data->dev_private;\n+\n+\tstruct aq_hw_s *hw = &adapter->hw;\n+\tunsigned int i, count = 0;\n+\n+\tfor (i = 0; i < RTE_DIM(atl_xstats_tbl); i++) {\n+\t\tif (atl_xstats_tbl[i].type == XSTATS_TYPE_MACSEC &&\n+\t\t\t((hw->caps_lo & BIT(CAPS_LO_MACSEC)) == 0))\n+\t\t\tcontinue;\n+\n+\t\tcount++;\n+\t}\n+\n+\treturn count;\n+}\n+\n+static int\n atl_dev_xstats_get_names(struct rte_eth_dev *dev __rte_unused,\n \t\t\t struct rte_eth_xstat_name *xstats_names,\n \t\t\t unsigned int size)\n {\n \tunsigned int i;\n+\tunsigned int count = atl_dev_xstats_get_count(dev);\n \n-\tif (!xstats_names)\n-\t\treturn RTE_DIM(atl_xstats_tbl);\n-\n-\tfor (i = 0; i < size && i < RTE_DIM(atl_xstats_tbl); i++)\n-\t\tstrlcpy(xstats_names[i].name, atl_xstats_tbl[i].name,\n-\t\t\tRTE_ETH_XSTATS_NAME_SIZE);\n+\tif (xstats_names) {\n+\t\tfor (i = 0; i < size && i < count; i++) {\n+\t\t\tsnprintf(xstats_names[i].name,\n+\t\t\t\tRTE_ETH_XSTATS_NAME_SIZE, \"%s\",\n+\t\t\t\tatl_xstats_tbl[i].name);\n+\t\t}\n+\t}\n \n-\treturn i;\n+\treturn count;\n }\n \n static int\n@@ -1020,9 +1042,10 @@ atl_dev_xstats_get(struct rte_eth_dev *dev, struct rte_eth_xstat *stats,\n \tstruct macsec_msg_fw_response resp = { 0 };\n \tint err = -1;\n \tunsigned int i;\n+\tunsigned int count = atl_dev_xstats_get_count(dev);\n \n \tif (!stats)\n-\t\treturn 0;\n+\t\treturn count;\n \n \tif (hw->aq_fw_ops->send_macsec_req != NULL) {\n \t\treq.ingress_sa_index = 0xff;\n@@ -1035,7 +1058,7 @@ atl_dev_xstats_get(struct rte_eth_dev *dev, struct rte_eth_xstat *stats,\n \t\terr = hw->aq_fw_ops->send_macsec_req(hw, &msg, &resp);\n \t}\n \n-\tfor (i = 0; i < n && i < RTE_DIM(atl_xstats_tbl); i++) {\n+\tfor (i = 0; i < n && i < count; i++) {\n \t\tstats[i].id = i;\n \n \t\tswitch (atl_xstats_tbl[i].type) {\n@@ -1044,14 +1067,15 @@ atl_dev_xstats_get(struct rte_eth_dev *dev, struct rte_eth_xstat *stats,\n \t\t\t\t\t atl_xstats_tbl[i].offset);\n \t\t\tbreak;\n \t\tcase XSTATS_TYPE_MACSEC:\n-\t\t\tif (err)\n-\t\t\t\tgoto done;\n-\t\t\tstats[i].value = *(u64 *)((uint8_t *)&resp.stats +\n-\t\t\t\t\t atl_xstats_tbl[i].offset);\n+\t\t\tif (!err) {\n+\t\t\t\tstats[i].value =\n+\t\t\t\t\t*(u64 *)((uint8_t *)&resp.stats +\n+\t\t\t\t\tatl_xstats_tbl[i].offset);\n+\t\t\t}\n \t\t\tbreak;\n \t\t}\n \t}\n-done:\n+\n \treturn i;\n }\n \n",
    "prefixes": [
        "1/3"
    ]
}