get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 86971,
    "url": "http://patchwork.dpdk.org/api/patches/86971/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/ab337302a1672b9ed0045b3cf9b6ed407fac746a.1611143368.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": "<ab337302a1672b9ed0045b3cf9b6ed407fac746a.1611143368.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/ab337302a1672b9ed0045b3cf9b6ed407fac746a.1611143368.git.anatoly.burakov@intel.com",
    "date": "2021-01-20T11:50:26",
    "name": "[v19,1/4] eal: rename power monitor condition member",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "86ecbd11d1f97f8b1690bc916f44ad8dba707fe2",
    "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/ab337302a1672b9ed0045b3cf9b6ed407fac746a.1611143368.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 14866,
            "url": "http://patchwork.dpdk.org/api/series/14866/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=14866",
            "date": "2021-01-20T11:50:25",
            "name": "Add PMD power management",
            "version": 19,
            "mbox": "http://patchwork.dpdk.org/series/14866/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/86971/comments/",
    "check": "warning",
    "checks": "http://patchwork.dpdk.org/api/patches/86971/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 DAEF9A0A05;\n\tWed, 20 Jan 2021 12:50:39 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 6A375140D0D;\n\tWed, 20 Jan 2021 12:50:35 +0100 (CET)",
            "from mga14.intel.com (mga14.intel.com [192.55.52.115])\n by mails.dpdk.org (Postfix) with ESMTP id 760A9140D02\n for <dev@dpdk.org>; Wed, 20 Jan 2021 12:50:34 +0100 (CET)",
            "from fmsmga006.fm.intel.com ([10.253.24.20])\n by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 20 Jan 2021 03:50:34 -0800",
            "from silpixa00399498.ir.intel.com (HELO\n silpixa00399498.ger.corp.intel.com) ([10.237.222.179])\n by fmsmga006.fm.intel.com with ESMTP; 20 Jan 2021 03:50:31 -0800"
        ],
        "IronPort-SDR": [
            "\n qtRXXgC7lN3heN6rLEyhgq2GE91es72k6JnYUFDYOHr3n7tqClT3ilUXXa5s0zfjKPPfZIJ4h8\n eU9tmH6cLXiw==",
            "\n lrLRKO+CWYjk2tTYTXwA9TA6xXBFzHw/3BY3RDX0yqsbgDcxvaj9PEXlfccbbKGBgMutXVt3Dp\n A/QWOd5H0d/A=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6000,8403,9869\"; a=\"178313178\"",
            "E=Sophos;i=\"5.79,361,1602572400\"; d=\"scan'208\";a=\"178313178\"",
            "E=Sophos;i=\"5.79,361,1602572400\"; d=\"scan'208\";a=\"571319261\""
        ],
        "X-ExtLoop1": "1",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "Timothy McDaniel <timothy.mcdaniel@intel.com>,\n Beilei Xing <beilei.xing@intel.com>, Jeff Guo <jia.guo@intel.com>,\n Qiming Yang <qiming.yang@intel.com>, Qi Zhang <qi.z.zhang@intel.com>,\n Haiyue Wang <haiyue.wang@intel.com>,\n Bruce Richardson <bruce.richardson@intel.com>,\n Konstantin Ananyev <konstantin.ananyev@intel.com>, thomas@monjalon.net",
        "Date": "Wed, 20 Jan 2021 11:50:26 +0000",
        "Message-Id": "\n <ab337302a1672b9ed0045b3cf9b6ed407fac746a.1611143368.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "In-Reply-To": "<cover.1611143367.git.anatoly.burakov@intel.com>",
        "References": "<cover.1611074697.git.anatoly.burakov@intel.com>\n <cover.1611143367.git.anatoly.burakov@intel.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v19 1/4] eal: rename power monitor condition\n member",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "The `data_sz` name is fine, but it looks out of place because nothing\nelse has \"data\" prefix in that structure. Rename it to \"size\", as well\nas add more clarity to the comments around each struct member.\n\nFixes: 6a17919b0e2a (\"eal: change power intrinsics API\")\n\nSigned-off-by: Anatoly Burakov <anatoly.burakov@intel.com>\n---\n drivers/event/dlb/dlb.c                       |  2 +-\n drivers/event/dlb2/dlb2.c                     |  2 +-\n drivers/net/i40e/i40e_rxtx.c                  |  2 +-\n drivers/net/ice/ice_rxtx.c                    |  2 +-\n drivers/net/ixgbe/ixgbe_rxtx.c                |  2 +-\n .../include/generic/rte_power_intrinsics.h    | 19 +++++++++++--------\n lib/librte_eal/x86/rte_power_intrinsics.c     |  4 ++--\n 7 files changed, 18 insertions(+), 15 deletions(-)",
    "diff": "diff --git a/drivers/event/dlb/dlb.c b/drivers/event/dlb/dlb.c\nindex d2f2026291..a65f70882f 100644\n--- a/drivers/event/dlb/dlb.c\n+++ b/drivers/event/dlb/dlb.c\n@@ -3185,7 +3185,7 @@ dlb_dequeue_wait(struct dlb_eventdev *dlb,\n \t\tpmc.addr = monitor_addr;\n \t\tpmc.val = expected_value;\n \t\tpmc.mask = qe_mask.raw_qe[1];\n-\t\tpmc.data_sz = sizeof(uint64_t);\n+\t\tpmc.size = sizeof(uint64_t);\n \n \t\trte_power_monitor(&pmc, timeout + start_ticks);\n \ndiff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c\nindex c9a8a02278..5782960158 100644\n--- a/drivers/event/dlb2/dlb2.c\n+++ b/drivers/event/dlb2/dlb2.c\n@@ -2894,7 +2894,7 @@ dlb2_dequeue_wait(struct dlb2_eventdev *dlb2,\n \t\tpmc.addr = monitor_addr;\n \t\tpmc.val = expected_value;\n \t\tpmc.mask = qe_mask.raw_qe[1];\n-\t\tpmc.data_sz = sizeof(uint64_t);\n+\t\tpmc.size = sizeof(uint64_t);\n \n \t\trte_power_monitor(&pmc, timeout + start_ticks);\n \ndiff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c\nindex 0b4220fc9c..d8e9db55d8 100644\n--- a/drivers/net/i40e/i40e_rxtx.c\n+++ b/drivers/net/i40e/i40e_rxtx.c\n@@ -92,7 +92,7 @@ i40e_get_monitor_addr(void *rx_queue, struct rte_power_monitor_cond *pmc)\n \tpmc->mask = rte_cpu_to_le_64(1 << I40E_RX_DESC_STATUS_DD_SHIFT);\n \n \t/* registers are 64-bit */\n-\tpmc->data_sz = sizeof(uint64_t);\n+\tpmc->size = sizeof(uint64_t);\n \n \treturn 0;\n }\ndiff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c\nindex 066651dc48..5909e3707b 100644\n--- a/drivers/net/ice/ice_rxtx.c\n+++ b/drivers/net/ice/ice_rxtx.c\n@@ -46,7 +46,7 @@ ice_get_monitor_addr(void *rx_queue, struct rte_power_monitor_cond *pmc)\n \tpmc->mask = rte_cpu_to_le_16(1 << ICE_RX_FLEX_DESC_STATUS0_DD_S);\n \n \t/* register is 16-bit */\n-\tpmc->data_sz = sizeof(uint16_t);\n+\tpmc->size = sizeof(uint16_t);\n \n \treturn 0;\n }\ndiff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c\nindex cc8f70e6dd..c0305a8238 100644\n--- a/drivers/net/ixgbe/ixgbe_rxtx.c\n+++ b/drivers/net/ixgbe/ixgbe_rxtx.c\n@@ -1389,7 +1389,7 @@ ixgbe_get_monitor_addr(void *rx_queue, struct rte_power_monitor_cond *pmc)\n \tpmc->mask = rte_cpu_to_le_32(IXGBE_RXDADV_STAT_DD);\n \n \t/* the registers are 32-bit */\n-\tpmc->data_sz = sizeof(uint32_t);\n+\tpmc->size = sizeof(uint32_t);\n \n \treturn 0;\n }\ndiff --git a/lib/librte_eal/include/generic/rte_power_intrinsics.h b/lib/librte_eal/include/generic/rte_power_intrinsics.h\nindex 6109d28faa..5960c48c80 100644\n--- a/lib/librte_eal/include/generic/rte_power_intrinsics.h\n+++ b/lib/librte_eal/include/generic/rte_power_intrinsics.h\n@@ -20,14 +20,17 @@\n \n struct rte_power_monitor_cond {\n \tvolatile void *addr;  /**< Address to monitor for changes */\n-\tuint64_t val;         /**< Before attempting the monitoring, the address\n-\t                       *   may be read and compared against this value.\n-\t                       **/\n-\tuint64_t mask;   /**< 64-bit mask to extract current value from addr */\n-\tuint8_t data_sz; /**< Data size (in bytes) that will be used to compare\n-\t                  *   expected value with the memory address. Can be 1,\n-\t                  *   2, 4, or 8. Supplying any other value will lead to\n-\t                  *   undefined result. */\n+\tuint64_t val;         /**< If the `mask` is non-zero, location pointed\n+\t                       *   to by `addr` will be read and compared\n+\t                       *   against this value.\n+\t                       */\n+\tuint64_t mask;   /**< 64-bit mask to extract value read from `addr` */\n+\tuint8_t size;    /**< Data size (in bytes) that will be used to compare\n+\t                  *   expected value (`val`) with data read from the\n+\t                  *   monitored memory location (`addr`). Can be 1, 2,\n+\t                  *   4, or 8. Supplying any other value will result in\n+\t                  *   an error.\n+\t                  */\n };\n \n /**\ndiff --git a/lib/librte_eal/x86/rte_power_intrinsics.c b/lib/librte_eal/x86/rte_power_intrinsics.c\nindex af3ae3237c..39ea9fdecd 100644\n--- a/lib/librte_eal/x86/rte_power_intrinsics.c\n+++ b/lib/librte_eal/x86/rte_power_intrinsics.c\n@@ -88,7 +88,7 @@ rte_power_monitor(const struct rte_power_monitor_cond *pmc,\n \tif (pmc == NULL)\n \t\treturn -EINVAL;\n \n-\tif (__check_val_size(pmc->data_sz) < 0)\n+\tif (__check_val_size(pmc->size) < 0)\n \t\treturn -EINVAL;\n \n \ts = &wait_status[lcore_id];\n@@ -113,7 +113,7 @@ rte_power_monitor(const struct rte_power_monitor_cond *pmc,\n \t/* if we have a comparison mask, we might not need to sleep at all */\n \tif (pmc->mask) {\n \t\tconst uint64_t cur_value = __get_umwait_val(\n-\t\t\t\tpmc->addr, pmc->data_sz);\n+\t\t\t\tpmc->addr, pmc->size);\n \t\tconst uint64_t masked = cur_value & pmc->mask;\n \n \t\t/* if the masked value is already matching, abort */\n",
    "prefixes": [
        "v19",
        "1/4"
    ]
}