Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/113985/?format=api
http://patchwork.dpdk.org/api/patches/113985/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/3f66bf233f9f1ef28c93ca22fa0972491b36c3e8.1657890738.git.anatoly.burakov@intel.com/", "project": { "id": 1, "url": "http://patchwork.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": "<3f66bf233f9f1ef28c93ca22fa0972491b36c3e8.1657890738.git.anatoly.burakov@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/3f66bf233f9f1ef28c93ca22fa0972491b36c3e8.1657890738.git.anatoly.burakov@intel.com", "date": "2022-07-15T13:12:54", "name": "[20.11,v1,2/2] eal: add cpuset lcore telemetry entries", "commit_ref": null, "pull_url": null, "state": "not-applicable", "archived": true, "hash": "2d5f434298b99e373275019456574ea914d1ddba", "submitter": { "id": 4, "url": "http://patchwork.dpdk.org/api/people/4/?format=api", "name": "Anatoly Burakov", "email": "anatoly.burakov@intel.com" }, "delegate": { "id": 1, "url": "http://patchwork.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/3f66bf233f9f1ef28c93ca22fa0972491b36c3e8.1657890738.git.anatoly.burakov@intel.com/mbox/", "series": [ { "id": 24003, "url": "http://patchwork.dpdk.org/api/series/24003/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=24003", "date": "2022-07-15T13:12:53", "name": "[20.11,v1,1/2] eal: add lcore busyness telemetry", "version": 1, "mbox": "http://patchwork.dpdk.org/series/24003/mbox/" } ], "comments": "http://patchwork.dpdk.org/api/patches/113985/comments/", "check": "success", "checks": "http://patchwork.dpdk.org/api/patches/113985/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 9431DA0032;\n\tFri, 15 Jul 2022 15:13:24 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 583FF40696;\n\tFri, 15 Jul 2022 15:13:22 +0200 (CEST)", "from mga06.intel.com (mga06b.intel.com [134.134.136.31])\n by mails.dpdk.org (Postfix) with ESMTP id CBF7240696\n for <dev@dpdk.org>; Fri, 15 Jul 2022 15:13:18 +0200 (CEST)", "from fmsmga003.fm.intel.com ([10.253.24.29])\n by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 15 Jul 2022 06:13:00 -0700", "from silpixa00401191.ir.intel.com ([10.55.128.75])\n by FMSMGA003.fm.intel.com with ESMTP; 15 Jul 2022 06:13:00 -0700" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1657890799; x=1689426799;\n h=from:to:subject:date:message-id:in-reply-to:references:\n mime-version:content-transfer-encoding;\n bh=h77i2d7CtD3Vs/vdrLhOOL0sTuGrEcf8SUYINxmxwlE=;\n b=NF3a5QAwfg3BGYnzh9nf0+jP5cIRQZPlTFZ+hlbCPH+Gr7ZRe5xQ/go5\n vm9AYdDZsWhD7+a1IHDRq3MXpxkrtL9vI3kqtJd66sgXR8iPLayhSlBRg\n DvM2hepv/1Fp6G1Kc6fqBtVTz2h70VCULpS68nYQA+e4dcANDsTwm8KpS\n i6mpJM+9yDGNrMksuVbIjuvpRFs5CQG0kkZqx6k6mAuta+o3AhkpXkGAJ\n Ze4k7ArfS7/4TZxakp7nNuadzbcMTH1iJ9UzPyLorovq6JQAt6GT89HTM\n NzJmQV4VBDj/kMA0Vb0n6T9C3cJyoIsEW9VmIUM1r6/4QoUeuTYNXq+1J A==;", "X-IronPort-AV": [ "E=McAfee;i=\"6400,9594,10408\"; a=\"347467266\"", "E=Sophos;i=\"5.92,274,1650956400\"; d=\"scan'208\";a=\"347467266\"", "E=Sophos;i=\"5.92,274,1650956400\"; d=\"scan'208\";a=\"685956357\"" ], "X-ExtLoop1": "1", "From": "Anatoly Burakov <anatoly.burakov@intel.com>", "To": "dev@dpdk.org", "Subject": "[20.11 PATCH v1 2/2] eal: add cpuset lcore telemetry entries", "Date": "Fri, 15 Jul 2022 13:12:54 +0000", "Message-Id": "\n <3f66bf233f9f1ef28c93ca22fa0972491b36c3e8.1657890738.git.anatoly.burakov@intel.com>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "\n <eab9994ef9e9531e6ed03773a1ecd2654a196a3d.1657890738.git.anatoly.burakov@intel.com>", "References": "\n <eab9994ef9e9531e6ed03773a1ecd2654a196a3d.1657890738.git.anatoly.burakov@intel.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": "Expose per-lcore cpuset information to telemetry.\n\nSigned-off-by: Anatoly Burakov <anatoly.burakov@intel.com>\n---\n .../common/eal_common_lcore_telemetry.c | 47 +++++++++++++++++++\n 1 file changed, 47 insertions(+)", "diff": "diff --git a/lib/librte_eal/common/eal_common_lcore_telemetry.c b/lib/librte_eal/common/eal_common_lcore_telemetry.c\nindex 5e4ea15ff5..39fffe2b93 100644\n--- a/lib/librte_eal/common/eal_common_lcore_telemetry.c\n+++ b/lib/librte_eal/common/eal_common_lcore_telemetry.c\n@@ -19,6 +19,8 @@ int __rte_lcore_telemetry_enabled;\n \n #ifdef RTE_LCORE_BUSYNESS\n \n+#include \"eal_private.h\"\n+\n struct lcore_telemetry {\n \tint busyness;\n \t/**< Calculated busyness (gets set/returned by the API) */\n@@ -235,6 +237,48 @@ lcore_handle_busyness(const char *cmd __rte_unused,\n \treturn 0;\n }\n \n+static int\n+lcore_handle_cpuset(const char *cmd __rte_unused,\n+\t\t const char *params __rte_unused,\n+\t\t struct rte_tel_data *d)\n+{\n+\tchar corenum[64];\n+\tint i;\n+\n+\trte_tel_data_start_dict(d);\n+\n+\tRTE_LCORE_FOREACH(i) {\n+\t\tconst struct lcore_config *cfg = &lcore_config[i];\n+\t\tconst rte_cpuset_t *cpuset = &cfg->cpuset;\n+\t\tstruct rte_tel_data *ld;\n+\t\tunsigned int cpu;\n+\n+\t\tif (!rte_lcore_is_enabled(i))\n+\t\t\tcontinue;\n+\n+\t\t/* create an array of integers */\n+\t\tld = rte_tel_data_alloc();\n+\t\tif (ld == NULL)\n+\t\t\treturn -ENOMEM;\n+\t\trte_tel_data_start_array(ld, RTE_TEL_INT_VAL);\n+\n+\t\t/* add cpu ID's from cpuset to the array */\n+\t\tfor (cpu = 0; cpu < CPU_SETSIZE; cpu++) {\n+\t\t\tif (!CPU_ISSET(cpu, cpuset))\n+\t\t\t\tcontinue;\n+\t\t\trte_tel_data_add_array_int(ld, cpu);\n+\t\t}\n+\n+\t\t/* add array to the per-lcore container */\n+\t\tsnprintf(corenum, sizeof(corenum), \"%d\", i);\n+\n+\t\t/* tell telemetry library to free this array automatically */\n+\t\trte_tel_data_add_dict_container(d, corenum, ld, 0);\n+\t}\n+\n+\treturn 0;\n+}\n+\n RTE_INIT(lcore_init_telemetry)\n {\n \t__rte_lcore_telemetry_enabled = true;\n@@ -249,6 +293,9 @@ RTE_INIT(lcore_init_telemetry)\n \n \trte_telemetry_register_cmd(\"/eal/lcore/busyness_disable\", lcore_busyness_disable,\n \t\t\t\t \"disable lcore busyness measurement\");\n+\n+\trte_telemetry_register_cmd(\"/eal/lcore/cpuset\", lcore_handle_cpuset,\n+\t\t\t\t \"list physical core affinity for each lcore\");\n }\n \n #else\n", "prefixes": [ "20.11", "v1", "2/2" ] }{ "id": 113985, "url": "