get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 138459,
    "url": "http://patches.dpdk.org/api/patches/138459/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20240318173146.24303-3-sivaprasad.tummala@amd.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": "<20240318173146.24303-3-sivaprasad.tummala@amd.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20240318173146.24303-3-sivaprasad.tummala@amd.com",
    "date": "2024-03-18T17:31:41",
    "name": "[v5,2/6] examples/l3fwd-power: fix lcore ID restriction",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "58baffd1eb89b91633af1339c279fe6d37ddb37e",
    "submitter": {
        "id": 2510,
        "url": "http://patches.dpdk.org/api/people/2510/?format=api",
        "name": "Sivaprasad Tummala",
        "email": "Sivaprasad.Tummala@amd.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20240318173146.24303-3-sivaprasad.tummala@amd.com/mbox/",
    "series": [
        {
            "id": 31546,
            "url": "http://patches.dpdk.org/api/series/31546/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=31546",
            "date": "2024-03-18T17:31:40",
            "name": "fix lcore ID restriction",
            "version": 5,
            "mbox": "http://patches.dpdk.org/series/31546/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/138459/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/138459/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 63FFF43CE8;\n\tMon, 18 Mar 2024 18:32:34 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D451F409FA;\n\tMon, 18 Mar 2024 18:32:20 +0100 (CET)",
            "from NAM11-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam11on2079.outbound.protection.outlook.com [40.107.223.79])\n by mails.dpdk.org (Postfix) with ESMTP id 3805A406B7;\n Mon, 18 Mar 2024 18:32:19 +0100 (CET)",
            "from CH0PR07CA0019.namprd07.prod.outlook.com (2603:10b6:610:32::24)\n by MW4PR12MB6874.namprd12.prod.outlook.com (2603:10b6:303:20b::13)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.27; Mon, 18 Mar\n 2024 17:32:15 +0000",
            "from CH1PEPF0000AD76.namprd04.prod.outlook.com\n (2603:10b6:610:32:cafe::49) by CH0PR07CA0019.outlook.office365.com\n (2603:10b6:610:32::24) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.27 via Frontend\n Transport; Mon, 18 Mar 2024 17:32:14 +0000",
            "from SATLEXMB04.amd.com (165.204.84.17) by\n CH1PEPF0000AD76.mail.protection.outlook.com (10.167.244.53) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.20.7409.10 via Frontend Transport; Mon, 18 Mar 2024 17:32:14 +0000",
            "from ubuntu2004.linuxvmimages.local (10.180.168.240) by\n SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.1.2507.35; Mon, 18 Mar 2024 12:32:09 -0500"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=a2KrUAnE1dQsBP3zLVdq69MN8bDJCF1Lwv1N+Dhz/Sqd+oqI2c4qyhtE432KqH5aMSDN8e8oE4b4B8acpm2WimgfvFOUBzi0QpDFM8CifVSG9hQyrqmyFBsurIVVEUkIs/IHVV6nHcaAHtjPpVntC5VHU4PKYxD/pfzRutzN0USX7IWBFEAanhnZ1hxaWC/igddVfF/E0x0er/jAtPcGDi263X2lPkjvsie3/Hp5g7RnI+ovP/Ys+oUGJ3mEiqWuBF6U1UQCGXiP035p84v9z5X8DmVN9Lkzwf1CiGuMudOwpxw1UL53k4/VxvBtqa5koPy36biTEc/Vddk1TAwl9w==",
        "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=NFFhnNocpbC7ZQxY4jXqxJlizdDeSctULyR3n3YdeKo=;\n b=P9yJ+OybxBqs3wYMKcVfAB/c7YvVmWi17mzgdBUfPT61p77KoXyUiaT9rPlgvv6zhPa0teKHSb6/9L09wO6pns8OgMcE1QF9DBfFtkfskUY1mF0X1kFWCZ++Zdsy5CPVwUtpbxHl3BVj/nT9AqwYTFT7VPX8L1tpA2vh7t+UrAi2hPcINv7q+LBCh7upnAwRGH0RZiOfcprsiIe1EmC2oDmeZx6bz+EENHVENQo8tuyKypIRIzSrHSzVxADbqqEioPXNWIiJYu40dnU4pf0BXeIa1a5nhMTHhNWTNQESJjPBXWPZkjAQt+5+2JWGdUrajr+qF3MsVKn0SmfLrdIacw==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 165.204.84.17) smtp.rcpttodomain=intel.com smtp.mailfrom=amd.com; dmarc=pass\n (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;\n dkim=none (message not signed); arc=none (0)",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=NFFhnNocpbC7ZQxY4jXqxJlizdDeSctULyR3n3YdeKo=;\n b=nPJPyid8ec4wb82+1Pv60ooRNQVVwEzZiBs+NNO9ji31DuptT3/JSruRr3Q9MbLCfb14Mi+9VfbcHrVRiQKBcCnZ//ZYRRquiDDwdvo3noengPa0vGRpPgaeXZ7Eu//S3H6QoJB6ulABUiin3bJxXAOV4QcnlghemOcTKj97ckk=",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 165.204.84.17)\n smtp.mailfrom=amd.com; dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=amd.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of amd.com designates\n 165.204.84.17 as permitted sender) receiver=protection.outlook.com;\n client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C",
        "From": "Sivaprasad Tummala <sivaprasad.tummala@amd.com>",
        "To": "<david.hunt@intel.com>, <anatoly.burakov@intel.com>, <jerinj@marvell.com>,\n <radu.nicolau@intel.com>, <gakhil@marvell.com>,\n <cristian.dumitrescu@intel.com>, <ferruh.yigit@amd.com>,\n <konstantin.ananyev@huawei.com>, <stephen@networkplumber.org>,\n <david.marchand@redhat.com>",
        "CC": "<dev@dpdk.org>, <stable@dpdk.org>",
        "Subject": "[PATCH v5 2/6] examples/l3fwd-power: fix lcore ID restriction",
        "Date": "Mon, 18 Mar 2024 18:31:41 +0100",
        "Message-ID": "<20240318173146.24303-3-sivaprasad.tummala@amd.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<20240318173146.24303-1-sivaprasad.tummala@amd.com>",
        "References": "<20240116182332.95537-1-sivaprasad.tummala@amd.com>\n <20240318173146.24303-1-sivaprasad.tummala@amd.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.180.168.240]",
        "X-ClientProxiedBy": "SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com\n (10.181.40.145)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "CH1PEPF0000AD76:EE_|MW4PR12MB6874:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "7932bb24-dafa-4bc3-268f-08dc47715a31",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n OV+HY4/7uhOFKMrJzNEgITM/jCMantfuMaSwQHiPNybD7qNyDCGDGauEx2pj99FCtZ4OAXI6ybnG0AJ2WfPcqCY9OvYvUl0sD2z2WuXAUgk3DhBWyCga/pMd/7/vt0kigZOD8TJrH25RQbqdd3rfNiLYn7P1hmk2OpwxQmdVtSWQ7+Y2xuGLwX0h0gzMIClyoyQI4C1n60z/yjUH7TidXCYzINr+vwWAvBhTfOdFrn0SDli9Imha2nAFEchbC0HOdymSIBRtAEVH2vqEUvzBdnieGCl7ZGg99JNHm4GnlcEAtI4wzgOz047Z4JyNQKsYOd7G7+Q+Bn2tqMOhxB3ZIxiOMo2LBA1RWJ/RMiy9ZGodmQ+Ihi4ZyQD799h3DtIKMTV+yJN/IoyFDSCuDribwzFkr/zJciZoYwMEaUVzpMj0ZnG1KiPd72LkoLJfXf5dpCU4+IAS1nsjwgT6LkVcKAsfXEG9d4h+yVVA1dglfv1qdi5IgKQrrH7OAHwOKf7/XehOZnzV/9FpJSe5DrxruXzj4Qd7WGSj8W74bYODsmXZH90dSJA7ftb4p55++33V/O5z0dmnIeldpfxudPXM80NxM+wf8gzu/FoXX7earf0GH6ZrGGbk6ojTUs2VwcN3t/bAcFxXPJSFCJZF8PkUSs2m/GdC0UrfCYvH41tCERFS0jE7XLk2m+XIkkHOw8klZ8VewEXdEG6nDzfyBP2k1FiYoHXKueAW4hZqKKsnnZDPGSP9THrybcm1bHBsTVoSuN69xR1sAW9IqVFGMGhFJA==",
        "X-Forefront-Antispam-Report": "CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE;\n SFS:(13230031)(1800799015)(82310400014)(7416005)(36860700004)(376005)(921011);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "amd.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "18 Mar 2024 17:32:14.9189 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 7932bb24-dafa-4bc3-268f-08dc47715a31",
        "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17];\n Helo=[SATLEXMB04.amd.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n CH1PEPF0000AD76.namprd04.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MW4PR12MB6874",
        "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": "Currently the config option allows lcore IDs up to 255,\nirrespective of RTE_MAX_LCORES and needs to be fixed.\n\nThe patch allows config options based on DPDK config.\n\nFixes: f88e7c175a68 (\"examples/l3fwd-power: add high/regular perf cores options\")\nCc: radu.nicolau@intel.com\nCc: stable@dpdk.org\n\nSigned-off-by: Sivaprasad Tummala <sivaprasad.tummala@amd.com>\n---\n examples/l3fwd-power/main.c      | 59 ++++++++++++++++----------------\n examples/l3fwd-power/main.h      |  4 +--\n examples/l3fwd-power/perf_core.c | 16 +++++----\n 3 files changed, 41 insertions(+), 38 deletions(-)",
    "diff": "diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c\nindex f4adcf41b5..4430605df0 100644\n--- a/examples/l3fwd-power/main.c\n+++ b/examples/l3fwd-power/main.c\n@@ -214,7 +214,7 @@ enum freq_scale_hint_t\n \n struct lcore_rx_queue {\n \tuint16_t port_id;\n-\tuint8_t queue_id;\n+\tuint16_t queue_id;\n \tenum freq_scale_hint_t freq_up_hint;\n \tuint32_t zero_rx_packet_count;\n \tuint32_t idle_hint;\n@@ -838,7 +838,7 @@ sleep_until_rx_interrupt(int num, int lcore)\n \tstruct rte_epoll_event event[num];\n \tint n, i;\n \tuint16_t port_id;\n-\tuint8_t queue_id;\n+\tuint16_t queue_id;\n \tvoid *data;\n \n \tif (status[lcore].wakeup) {\n@@ -850,9 +850,9 @@ sleep_until_rx_interrupt(int num, int lcore)\n \tn = rte_epoll_wait(RTE_EPOLL_PER_THREAD, event, num, 10);\n \tfor (i = 0; i < n; i++) {\n \t\tdata = event[i].epdata.data;\n-\t\tport_id = ((uintptr_t)data) >> CHAR_BIT;\n+\t\tport_id = ((uintptr_t)data) >> (sizeof(uint16_t) * CHAR_BIT);\n \t\tqueue_id = ((uintptr_t)data) &\n-\t\t\tRTE_LEN2MASK(CHAR_BIT, uint8_t);\n+\t\t\tRTE_LEN2MASK((sizeof(uint16_t) * CHAR_BIT), uint16_t);\n \t\tRTE_LOG(INFO, L3FWD_POWER,\n \t\t\t\"lcore %u is waked up from rx interrupt on\"\n \t\t\t\" port %d queue %d\\n\",\n@@ -867,7 +867,7 @@ static void turn_on_off_intr(struct lcore_conf *qconf, bool on)\n {\n \tint i;\n \tstruct lcore_rx_queue *rx_queue;\n-\tuint8_t queue_id;\n+\tuint16_t queue_id;\n \tuint16_t port_id;\n \n \tfor (i = 0; i < qconf->n_rx_queue; ++i) {\n@@ -887,7 +887,7 @@ static void turn_on_off_intr(struct lcore_conf *qconf, bool on)\n static int event_register(struct lcore_conf *qconf)\n {\n \tstruct lcore_rx_queue *rx_queue;\n-\tuint8_t queueid;\n+\tuint16_t queueid;\n \tuint16_t portid;\n \tuint32_t data;\n \tint ret;\n@@ -897,7 +897,7 @@ static int event_register(struct lcore_conf *qconf)\n \t\trx_queue = &(qconf->rx_queue_list[i]);\n \t\tportid = rx_queue->port_id;\n \t\tqueueid = rx_queue->queue_id;\n-\t\tdata = portid << CHAR_BIT | queueid;\n+\t\tdata = portid << (sizeof(uint16_t) * CHAR_BIT) | queueid;\n \n \t\tret = rte_eth_dev_rx_intr_ctl_q(portid, queueid,\n \t\t\t\t\t\tRTE_EPOLL_PER_THREAD,\n@@ -917,8 +917,7 @@ static int main_intr_loop(__rte_unused void *dummy)\n \tunsigned int lcore_id;\n \tuint64_t prev_tsc, diff_tsc, cur_tsc;\n \tint i, j, nb_rx;\n-\tuint8_t queueid;\n-\tuint16_t portid;\n+\tuint16_t portid, queueid;\n \tstruct lcore_conf *qconf;\n \tstruct lcore_rx_queue *rx_queue;\n \tuint32_t lcore_rx_idle_count = 0;\n@@ -946,7 +945,7 @@ static int main_intr_loop(__rte_unused void *dummy)\n \t\tportid = qconf->rx_queue_list[i].port_id;\n \t\tqueueid = qconf->rx_queue_list[i].queue_id;\n \t\tRTE_LOG(INFO, L3FWD_POWER,\n-\t\t\t\t\" -- lcoreid=%u portid=%u rxqueueid=%hhu\\n\",\n+\t\t\t\t\" -- lcoreid=%u portid=%u rxqueueid=%hu\\n\",\n \t\t\t\tlcore_id, portid, queueid);\n \t}\n \n@@ -1083,8 +1082,7 @@ main_telemetry_loop(__rte_unused void *dummy)\n \tunsigned int lcore_id;\n \tuint64_t prev_tsc, diff_tsc, cur_tsc, prev_tel_tsc;\n \tint i, j, nb_rx;\n-\tuint8_t queueid;\n-\tuint16_t portid;\n+\tuint16_t portid, queueid;\n \tstruct lcore_conf *qconf;\n \tstruct lcore_rx_queue *rx_queue;\n \tuint64_t ep_nep[2] = {0}, fp_nfp[2] = {0};\n@@ -1114,7 +1112,7 @@ main_telemetry_loop(__rte_unused void *dummy)\n \t\tportid = qconf->rx_queue_list[i].port_id;\n \t\tqueueid = qconf->rx_queue_list[i].queue_id;\n \t\tRTE_LOG(INFO, L3FWD_POWER, \" -- lcoreid=%u portid=%u \"\n-\t\t\t\"rxqueueid=%hhu\\n\", lcore_id, portid, queueid);\n+\t\t\t\"rxqueueid=%hu\\n\", lcore_id, portid, queueid);\n \t}\n \n \twhile (!is_done()) {\n@@ -1205,8 +1203,7 @@ main_legacy_loop(__rte_unused void *dummy)\n \tuint64_t prev_tsc, diff_tsc, cur_tsc, tim_res_tsc, hz;\n \tuint64_t prev_tsc_power = 0, cur_tsc_power, diff_tsc_power;\n \tint i, j, nb_rx;\n-\tuint8_t queueid;\n-\tuint16_t portid;\n+\tuint16_t portid, queueid;\n \tstruct lcore_conf *qconf;\n \tstruct lcore_rx_queue *rx_queue;\n \tenum freq_scale_hint_t lcore_scaleup_hint;\n@@ -1234,7 +1231,7 @@ main_legacy_loop(__rte_unused void *dummy)\n \t\tportid = qconf->rx_queue_list[i].port_id;\n \t\tqueueid = qconf->rx_queue_list[i].queue_id;\n \t\tRTE_LOG(INFO, L3FWD_POWER, \" -- lcoreid=%u portid=%u \"\n-\t\t\t\"rxqueueid=%hhu\\n\", lcore_id, portid, queueid);\n+\t\t\t\"rxqueueid=%hu\\n\", lcore_id, portid, queueid);\n \t}\n \n \t/* add into event wait list */\n@@ -1399,25 +1396,25 @@ main_legacy_loop(__rte_unused void *dummy)\n static int\n check_lcore_params(void)\n {\n-\tuint8_t queue, lcore;\n-\tuint16_t i;\n+\tuint16_t queue, i;\n+\tuint32_t lcore;\n \tint socketid;\n \n \tfor (i = 0; i < nb_lcore_params; ++i) {\n \t\tqueue = lcore_params[i].queue_id;\n \t\tif (queue >= MAX_RX_QUEUE_PER_PORT) {\n-\t\t\tprintf(\"invalid queue number: %hhu\\n\", queue);\n+\t\t\tprintf(\"invalid queue number: %hu\\n\", queue);\n \t\t\treturn -1;\n \t\t}\n \t\tlcore = lcore_params[i].lcore_id;\n \t\tif (!rte_lcore_is_enabled(lcore)) {\n-\t\t\tprintf(\"error: lcore %hhu is not enabled in lcore \"\n+\t\t\tprintf(\"error: lcore %u is not enabled in lcore \"\n \t\t\t\t\t\t\t\"mask\\n\", lcore);\n \t\t\treturn -1;\n \t\t}\n \t\tif ((socketid = rte_lcore_to_socket_id(lcore) != 0) &&\n \t\t\t\t\t\t\t(numa_on == 0)) {\n-\t\t\tprintf(\"warning: lcore %hhu is on socket %d with numa \"\n+\t\t\tprintf(\"warning: lcore %u is on socket %d with numa \"\n \t\t\t\t\t\t\"off\\n\", lcore, socketid);\n \t\t}\n \t\tif (app_mode == APP_MODE_TELEMETRY && lcore == rte_lcore_id()) {\n@@ -1451,7 +1448,7 @@ check_port_config(void)\n \treturn 0;\n }\n \n-static uint8_t\n+static uint16_t\n get_port_n_rx_queues(const uint16_t port)\n {\n \tint queue = -1;\n@@ -1462,14 +1459,14 @@ get_port_n_rx_queues(const uint16_t port)\n \t\t\t\tlcore_params[i].queue_id > queue)\n \t\t\tqueue = lcore_params[i].queue_id;\n \t}\n-\treturn (uint8_t)(++queue);\n+\treturn (uint16_t)(++queue);\n }\n \n static int\n init_lcore_rx_queues(void)\n {\n \tuint16_t i, nb_rx_queue;\n-\tuint8_t lcore;\n+\tuint32_t lcore;\n \n \tfor (i = 0; i < nb_lcore_params; ++i) {\n \t\tlcore = lcore_params[i].lcore_id;\n@@ -1661,6 +1658,8 @@ parse_config(const char *q_arg)\n \tchar *str_fld[_NUM_FLD];\n \tint i;\n \tunsigned size;\n+\tunsigned int max_fld[_NUM_FLD] = {RTE_MAX_ETHPORTS,\n+\t\t\t\t\tUSHRT_MAX, RTE_MAX_LCORE};\n \n \tnb_lcore_params = 0;\n \n@@ -1681,7 +1680,7 @@ parse_config(const char *q_arg)\n \t\t\terrno = 0;\n \t\t\tint_fld[i] = strtoul(str_fld[i], &end, 0);\n \t\t\tif (errno != 0 || end == str_fld[i] || int_fld[i] >\n-\t\t\t\t\t\t\t\t\t255)\n+\t\t\t\t\t\t\t\t\tmax_fld[i])\n \t\t\t\treturn -1;\n \t\t}\n \t\tif (nb_lcore_params >= MAX_LCORE_PARAMS) {\n@@ -1690,11 +1689,11 @@ parse_config(const char *q_arg)\n \t\t\treturn -1;\n \t\t}\n \t\tlcore_params_array[nb_lcore_params].port_id =\n-\t\t\t\t(uint8_t)int_fld[FLD_PORT];\n+\t\t\t\t(uint16_t)int_fld[FLD_PORT];\n \t\tlcore_params_array[nb_lcore_params].queue_id =\n-\t\t\t\t(uint8_t)int_fld[FLD_QUEUE];\n+\t\t\t\t(uint16_t)int_fld[FLD_QUEUE];\n \t\tlcore_params_array[nb_lcore_params].lcore_id =\n-\t\t\t\t(uint8_t)int_fld[FLD_LCORE];\n+\t\t\t\t(uint32_t)int_fld[FLD_LCORE];\n \t\t++nb_lcore_params;\n \t}\n \tlcore_params = lcore_params_array;\n@@ -2501,8 +2500,8 @@ main(int argc, char **argv)\n \tuint64_t hz;\n \tuint32_t n_tx_queue, nb_lcores;\n \tuint32_t dev_rxq_num, dev_txq_num;\n-\tuint8_t nb_rx_queue, queue, socketid;\n-\tuint16_t portid;\n+\tuint8_t socketid;\n+\tuint16_t portid, nb_rx_queue, queue;\n \tconst char *ptr_strings[NUM_TELSTATS];\n \n \t/* init EAL */\ndiff --git a/examples/l3fwd-power/main.h b/examples/l3fwd-power/main.h\nindex 258de98f5b..194bd82102 100644\n--- a/examples/l3fwd-power/main.h\n+++ b/examples/l3fwd-power/main.h\n@@ -9,8 +9,8 @@\n #define MAX_LCORE_PARAMS 1024\n struct lcore_params {\n \tuint16_t port_id;\n-\tuint8_t queue_id;\n-\tuint8_t lcore_id;\n+\tuint16_t queue_id;\n+\tuint32_t lcore_id;\n } __rte_cache_aligned;\n \n extern struct lcore_params *lcore_params;\ndiff --git a/examples/l3fwd-power/perf_core.c b/examples/l3fwd-power/perf_core.c\nindex 41ef6d0c9a..c2cdc4bf49 100644\n--- a/examples/l3fwd-power/perf_core.c\n+++ b/examples/l3fwd-power/perf_core.c\n@@ -22,9 +22,9 @@ static uint16_t nb_hp_lcores;\n \n struct perf_lcore_params {\n \tuint16_t port_id;\n-\tuint8_t queue_id;\n+\tuint16_t queue_id;\n \tuint8_t high_perf;\n-\tuint8_t lcore_idx;\n+\tuint32_t lcore_idx;\n } __rte_cache_aligned;\n \n static struct perf_lcore_params prf_lc_prms[MAX_LCORE_PARAMS];\n@@ -132,6 +132,8 @@ parse_perf_config(const char *q_arg)\n \tchar *str_fld[_NUM_FLD];\n \tint i;\n \tunsigned int size;\n+\tunsigned int max_fld[_NUM_FLD] = {RTE_MAX_ETHPORTS, USHRT_MAX,\n+\t\t\t\t\tUCHAR_MAX, RTE_MAX_LCORE};\n \n \tnb_prf_lc_prms = 0;\n \n@@ -152,7 +154,9 @@ parse_perf_config(const char *q_arg)\n \t\tfor (i = 0; i < _NUM_FLD; i++) {\n \t\t\terrno = 0;\n \t\t\tint_fld[i] = strtoul(str_fld[i], &end, 0);\n-\t\t\tif (errno != 0 || end == str_fld[i] || int_fld[i] > 255)\n+\t\t\tif (errno != 0 || end == str_fld[i] || int_fld[i] >\n+\t\t\t\t\t\t\t\t\tmax_fld[i])\n+\n \t\t\t\treturn -1;\n \t\t}\n \t\tif (nb_prf_lc_prms >= MAX_LCORE_PARAMS) {\n@@ -161,13 +165,13 @@ parse_perf_config(const char *q_arg)\n \t\t\treturn -1;\n \t\t}\n \t\tprf_lc_prms[nb_prf_lc_prms].port_id =\n-\t\t\t\t(uint8_t)int_fld[FLD_PORT];\n+\t\t\t\t(uint16_t)int_fld[FLD_PORT];\n \t\tprf_lc_prms[nb_prf_lc_prms].queue_id =\n-\t\t\t\t(uint8_t)int_fld[FLD_QUEUE];\n+\t\t\t\t(uint16_t)int_fld[FLD_QUEUE];\n \t\tprf_lc_prms[nb_prf_lc_prms].high_perf =\n \t\t\t\t!!(uint8_t)int_fld[FLD_LCORE_HP];\n \t\tprf_lc_prms[nb_prf_lc_prms].lcore_idx =\n-\t\t\t\t(uint8_t)int_fld[FLD_LCORE_IDX];\n+\t\t\t\t(uint32_t)int_fld[FLD_LCORE_IDX];\n \t\t++nb_prf_lc_prms;\n \t}\n \n",
    "prefixes": [
        "v5",
        "2/6"
    ]
}