get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 51316,
    "url": "https://patches.dpdk.org/api/patches/51316/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20190319061845.12343-1-pbhagavatula@marvell.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<20190319061845.12343-1-pbhagavatula@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20190319061845.12343-1-pbhagavatula@marvell.com",
    "date": "2019-03-19T06:21:59",
    "name": "app/eventdev: add option to set global dequeue tmo",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "2c1a702719d1e96fe83e22b941e032a0da8f44e8",
    "submitter": {
        "id": 1183,
        "url": "https://patches.dpdk.org/api/people/1183/?format=api",
        "name": "Pavan Nikhilesh Bhagavatula",
        "email": "pbhagavatula@marvell.com"
    },
    "delegate": {
        "id": 310,
        "url": "https://patches.dpdk.org/api/users/310/?format=api",
        "username": "jerin",
        "first_name": "Jerin",
        "last_name": "Jacob",
        "email": "jerinj@marvell.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20190319061845.12343-1-pbhagavatula@marvell.com/mbox/",
    "series": [
        {
            "id": 3794,
            "url": "https://patches.dpdk.org/api/series/3794/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=3794",
            "date": "2019-03-19T06:21:59",
            "name": "app/eventdev: add option to set global dequeue tmo",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/3794/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/51316/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/51316/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 0B14C11A4;\n\tTue, 19 Mar 2019 07:22:08 +0100 (CET)",
            "from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com\n\t[67.231.156.173]) by dpdk.org (Postfix) with ESMTP id D19CF239\n\tfor <dev@dpdk.org>; Tue, 19 Mar 2019 07:22:06 +0100 (CET)",
            "from pps.filterd (m0045851.ppops.net [127.0.0.1])\n\tby mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id\n\tx2J6JwOI001737 for <dev@dpdk.org>; Mon, 18 Mar 2019 23:22:06 -0700",
            "from sc-exch04.marvell.com ([199.233.58.184])\n\tby mx0b-0016f401.pphosted.com with ESMTP id 2raaprbj8w-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT)\n\tfor <dev@dpdk.org>; Mon, 18 Mar 2019 23:22:06 -0700",
            "from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH04.marvell.com\n\t(10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3;\n\tMon, 18 Mar 2019 23:22:04 -0700",
            "from NAM05-BY2-obe.outbound.protection.outlook.com (104.47.50.56)\n\tby SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server\n\t(TLS) id\n\t15.0.1367.3 via Frontend Transport; Mon, 18 Mar 2019 23:22:04 -0700",
            "from CY4PR1801MB1863.namprd18.prod.outlook.com (10.171.255.14) by\n\tCY4PR1801MB2023.namprd18.prod.outlook.com (10.171.255.152) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n\t15.20.1709.15; Tue, 19 Mar 2019 06:22:00 +0000",
            "from CY4PR1801MB1863.namprd18.prod.outlook.com\n\t([fe80::286d:5e93:974e:8bfa]) by\n\tCY4PR1801MB1863.namprd18.prod.outlook.com\n\t([fe80::286d:5e93:974e:8bfa%2]) with mapi id 15.20.1709.015;\n\tTue, 19 Mar 2019 06:22:00 +0000"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n\th=from : to : cc :\n\tsubject : date : message-id : content-type :\n\tcontent-transfer-encoding : mime-version; s=pfpt0818;\n\tbh=Bqn/wJANtWMH/aJ2ILrQ6WAYi0xNl87QBzMOt1Rx5KE=; \n\tb=dCDYLHfb+ZV+NCMgAy7bf141tfbIvIdQxl8QVQ1F4MwYmZ2thsXUpz+94+UUD0EStKWQ\n\tRRvMI6l1TYT1JK/xDZHJgMlakGXO05htu9m9yuVxSJNs6xvWSe0HyAMff7Icpu7FjlWA\n\tcNqEwlWlfqwA3cYtxUwxwRXLsLjNtG325pbOi4myCRyGH1aBlKomvQmZ2zWfZ1um0sAj\n\tBGw3gg4n30uvCBj0lQexaCkVmly0/wo/NXl0S9T0WAc0cHEFh0wG1lg1cj9rIXXfQVLV\n\twbh9xqmKn6YKMJmGSywVlAQ/fGclPUg0RBueB1LTkei44UaeLqRA/2QPIUEYVzxWJrYG\n\t+A== ",
            "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=marvell.onmicrosoft.com; s=selector1-marvell-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=Bqn/wJANtWMH/aJ2ILrQ6WAYi0xNl87QBzMOt1Rx5KE=;\n\tb=oZXbbW3R+avhJqAANchVJmSz6KfzKIpPXun6Srgez9Mh0j37pqG37PWlsX5lBnzyEnDpgnuJMac/gjHY+sIN9jKVtQL2S+UxDz57txd64PUY7xFVERuIzFtRAMeiqqUNu7nDSimxr4DZuKd3X7sCoge+/EEnuk6Ac65uMEIiIO4="
        ],
        "From": "Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>",
        "To": "Jerin Jacob Kollanukkaran <jerinj@marvell.com>",
        "CC": "\"dev@dpdk.org\" <dev@dpdk.org>, Pavan Nikhilesh Bhagavatula\n\t<pbhagavatula@marvell.com>",
        "Thread-Topic": "[dpdk-dev] [PATCH] app/eventdev: add option to set global\n\tdequeue tmo",
        "Thread-Index": "AQHU3hwPFvuTcbKudkiWpQCENFJC+Q==",
        "Date": "Tue, 19 Mar 2019 06:21:59 +0000",
        "Message-ID": "<20190319061845.12343-1-pbhagavatula@marvell.com>",
        "Accept-Language": "en-IN, en-US",
        "Content-Language": "en-US",
        "X-MS-Has-Attach": "",
        "X-MS-TNEF-Correlator": "",
        "x-clientproxiedby": "SG2PR04CA0144.apcprd04.prod.outlook.com\n\t(2603:1096:3:16::28) To CY4PR1801MB1863.namprd18.prod.outlook.com\n\t(2603:10b6:910:7a::14)",
        "x-ms-exchange-messagesentrepresentingtype": "1",
        "x-mailer": "git-send-email 2.21.0",
        "x-originating-ip": "[115.113.156.3]",
        "x-ms-publictraffictype": "Email",
        "x-ms-office365-filtering-correlation-id": "b9662ac5-a267-4e64-4415-08d6ac333170",
        "x-microsoft-antispam": "BCL:0; PCL:0;\n\tRULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020);\n\tSRVR:CY4PR1801MB2023; ",
        "x-ms-traffictypediagnostic": "CY4PR1801MB2023:",
        "x-microsoft-antispam-prvs": "<CY4PR1801MB2023613E73D1A3EB581F5285DE400@CY4PR1801MB2023.namprd18.prod.outlook.com>",
        "x-forefront-prvs": "0981815F2F",
        "x-forefront-antispam-report": "SFV:NSPM;\n\tSFS:(10009020)(396003)(39860400002)(346002)(366004)(136003)(376002)(189003)(199004)(105586002)(107886003)(81156014)(8676002)(81166006)(316002)(5660300002)(106356001)(6436002)(54906003)(53936002)(66066001)(6512007)(25786009)(6486002)(6862004)(7736002)(305945005)(4326008)(37006003)(68736007)(36756003)(97736004)(1076003)(50226002)(8936002)(256004)(478600001)(2616005)(2906002)(14444005)(86362001)(6506007)(71190400001)(71200400001)(386003)(55236004)(102836004)(99286004)(52116002)(3846002)(6116002)(14454004)(186003)(26005)(486006)(6636002)(476003);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR1801MB2023;\n\tH:CY4PR1801MB1863.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; \n\tPTR:InfoNoRecords; MX:1; A:1; ",
        "received-spf": "None (protection.outlook.com: marvell.com does not designate\n\tpermitted sender hosts)",
        "x-ms-exchange-senderadcheck": "1",
        "x-microsoft-antispam-message-info": "WLsQMDqOlSY1RjOXaRZt540QwZqZPryfyFeM+53i6anK3PfzEhWr73GjqUBLvxCpbL+avzKGuuCNTFvj8qwn3BHXWzH959AHt4/dBgPODTatqZo0LLjhGZoH9RvaZViuAK1rutHvxgb2n2Mz08jWl+QTENvsyc+nr76ck+DvhL7kGfxr1IS1XCy8GZr+q+T6MbBZUu/epMRCtgEqZKIIpeFTB53B+mq/fZYzYInRUj+1rcJBj6nZihUAbG0ExZAkuCk5AO4AcxHDl+6hU2NCn/Z1MohQp5um/FWVnU+dpD5CPNCbm25/rvqgesMGOwmRW1fCpu+kEFcN1E2bhLvbPaWSsRcB+If4Hq2odJ/QkTwr8T5/lbjr7SpiEf0ThfHyyD90Is+DJyx1jyYsP8WXG68ZzvoMlVeLy52xSA1zJVw=",
        "Content-Type": "text/plain; charset=\"iso-8859-1\"",
        "Content-Transfer-Encoding": "quoted-printable",
        "MIME-Version": "1.0",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "b9662ac5-a267-4e64-4415-08d6ac333170",
        "X-MS-Exchange-CrossTenant-originalarrivaltime": "19 Mar 2019 06:21:59.9769\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-fromentityheader": "Hosted",
        "X-MS-Exchange-CrossTenant-id": "70e1fb47-1155-421d-87fc-2e58f638b6e0",
        "X-MS-Exchange-CrossTenant-mailboxtype": "HOSTED",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY4PR1801MB2023",
        "X-OriginatorOrg": "marvell.com",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:, ,\n\tdefinitions=2019-03-19_02:, , signatures=0",
        "Subject": "[dpdk-dev] [PATCH] app/eventdev: add option to set global dequeue\n\ttmo",
        "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: Pavan Nikhilesh <pbhagavatula@marvell.com>\n\nAdd option to provide a global dequeue timeout that is used to create\nthe eventdev.\nThe dequeue timeout provided will be common across all the worker\nports. If the eventdev hardware supports power management through\ndequeue timeout then this option can be used for verifying power\ndemands at various packet rates.\n\nSigned-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>\n---\n app/test-eventdev/evt_options.c         | 13 +++++++++++++\n app/test-eventdev/evt_options.h         |  2 ++\n app/test-eventdev/test_order_atq.c      |  1 +\n app/test-eventdev/test_order_queue.c    |  1 +\n app/test-eventdev/test_perf_atq.c       |  1 +\n app/test-eventdev/test_perf_queue.c     |  1 +\n app/test-eventdev/test_pipeline_atq.c   |  1 +\n app/test-eventdev/test_pipeline_queue.c |  1 +\n 8 files changed, 21 insertions(+)",
    "diff": "diff --git a/app/test-eventdev/evt_options.c b/app/test-eventdev/evt_options.c\nindex cfa43a165..af5c08bac 100644\n--- a/app/test-eventdev/evt_options.c\n+++ b/app/test-eventdev/evt_options.c\n@@ -84,6 +84,16 @@ evt_parse_queue_priority(struct evt_options *opt, const char *arg __rte_unused)\n \treturn 0;\n }\n \n+static int\n+evt_parse_deq_tmo_nsec(struct evt_options *opt, const char *arg)\n+{\n+\tint ret;\n+\n+\tret = parser_read_uint32(&(opt->deq_tmo_nsec), arg);\n+\n+\treturn ret;\n+}\n+\n static int\n evt_parse_eth_prod_type(struct evt_options *opt, const char *arg __rte_unused)\n {\n@@ -240,6 +250,7 @@ usage(char *program)\n \t\t\"\\t--worker_deq_depth : dequeue depth of the worker\\n\"\n \t\t\"\\t--fwd_latency      : perform fwd_latency measurement\\n\"\n \t\t\"\\t--queue_priority   : enable queue priority\\n\"\n+\t\t\"\\t--deq_tmo_nsec     : global dequeue timeout\\n\"\n \t\t\"\\t--prod_type_ethdev : use ethernet device as producer.\\n\"\n \t\t\"\\t--prod_type_timerdev : use event timer device as producer.\\n\"\n \t\t\"\\t                     expity_nsec would be the timeout\\n\"\n@@ -311,6 +322,7 @@ static struct option lgopts[] = {\n \t{ EVT_SCHED_TYPE_LIST,     1, 0, 0 },\n \t{ EVT_FWD_LATENCY,         0, 0, 0 },\n \t{ EVT_QUEUE_PRIORITY,      0, 0, 0 },\n+\t{ EVT_DEQ_TMO_NSEC,        1, 0, 0 },\n \t{ EVT_PROD_ETHDEV,         0, 0, 0 },\n \t{ EVT_PROD_TIMERDEV,       0, 0, 0 },\n \t{ EVT_PROD_TIMERDEV_BURST, 0, 0, 0 },\n@@ -342,6 +354,7 @@ evt_opts_parse_long(int opt_idx, struct evt_options *opt)\n \t\t{ EVT_SCHED_TYPE_LIST, evt_parse_sched_type_list},\n \t\t{ EVT_FWD_LATENCY, evt_parse_fwd_latency},\n \t\t{ EVT_QUEUE_PRIORITY, evt_parse_queue_priority},\n+\t\t{ EVT_DEQ_TMO_NSEC, evt_parse_deq_tmo_nsec},\n \t\t{ EVT_PROD_ETHDEV, evt_parse_eth_prod_type},\n \t\t{ EVT_PROD_TIMERDEV, evt_parse_timer_prod_type},\n \t\t{ EVT_PROD_TIMERDEV_BURST, evt_parse_timer_prod_type_burst},\ndiff --git a/app/test-eventdev/evt_options.h b/app/test-eventdev/evt_options.h\nindex f3de48a17..c486c4185 100644\n--- a/app/test-eventdev/evt_options.h\n+++ b/app/test-eventdev/evt_options.h\n@@ -31,6 +31,7 @@\n #define EVT_SCHED_TYPE_LIST      (\"stlist\")\n #define EVT_FWD_LATENCY          (\"fwd_latency\")\n #define EVT_QUEUE_PRIORITY       (\"queue_priority\")\n+#define EVT_DEQ_TMO_NSEC         (\"deq_tmo_nsec\")\n #define EVT_PROD_ETHDEV          (\"prod_type_ethdev\")\n #define EVT_PROD_TIMERDEV        (\"prod_type_timerdev\")\n #define EVT_PROD_TIMERDEV_BURST  (\"prod_type_timerdev_burst\")\n@@ -71,6 +72,7 @@ struct evt_options {\n \tuint8_t dev_id;\n \tuint32_t fwd_latency:1;\n \tuint32_t q_priority:1;\n+\tuint32_t deq_tmo_nsec;\n \tenum evt_prod_type prod_type;\n \tuint8_t timdev_use_burst;\n \tuint8_t timdev_cnt;\ndiff --git a/app/test-eventdev/test_order_atq.c b/app/test-eventdev/test_order_atq.c\nindex 4a8546e7f..94e51161a 100644\n--- a/app/test-eventdev/test_order_atq.c\n+++ b/app/test-eventdev/test_order_atq.c\n@@ -119,6 +119,7 @@ order_atq_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \tconst uint8_t nb_ports = nb_workers + 1;\n \n \tconst struct rte_event_dev_config config = {\n+\t\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t\t.nb_event_queues = NB_QUEUES,/* one all types queue */\n \t\t\t.nb_event_ports = nb_ports,\n \t\t\t.nb_events_limit  = 4096,\ndiff --git a/app/test-eventdev/test_order_queue.c b/app/test-eventdev/test_order_queue.c\nindex a272c7a57..f643fc64a 100644\n--- a/app/test-eventdev/test_order_queue.c\n+++ b/app/test-eventdev/test_order_queue.c\n@@ -119,6 +119,7 @@ order_queue_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \tconst uint8_t nb_ports = nb_workers + 1;\n \n \tconst struct rte_event_dev_config config = {\n+\t\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t\t.nb_event_queues = NB_QUEUES,/* q0 ordered, q1 atomic */\n \t\t\t.nb_event_ports = nb_ports,\n \t\t\t.nb_events_limit  = 4096,\ndiff --git a/app/test-eventdev/test_perf_atq.c b/app/test-eventdev/test_perf_atq.c\nindex 73f31e564..9cb1dd344 100644\n--- a/app/test-eventdev/test_perf_atq.c\n+++ b/app/test-eventdev/test_perf_atq.c\n@@ -176,6 +176,7 @@ perf_atq_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \t}\n \n \tconst struct rte_event_dev_config config = {\n+\t\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t\t.nb_event_queues = nb_queues,\n \t\t\t.nb_event_ports = nb_ports,\n \t\t\t.nb_events_limit  = dev_info.max_num_events,\ndiff --git a/app/test-eventdev/test_perf_queue.c b/app/test-eventdev/test_perf_queue.c\nindex d89491364..50cd51b07 100644\n--- a/app/test-eventdev/test_perf_queue.c\n+++ b/app/test-eventdev/test_perf_queue.c\n@@ -177,6 +177,7 @@ perf_queue_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \t}\n \n \tconst struct rte_event_dev_config config = {\n+\t\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t\t.nb_event_queues = nb_queues,\n \t\t\t.nb_event_ports = nb_ports,\n \t\t\t.nb_events_limit  = dev_info.max_num_events,\ndiff --git a/app/test-eventdev/test_pipeline_atq.c b/app/test-eventdev/test_pipeline_atq.c\nindex 998a56cfd..0b7f92f95 100644\n--- a/app/test-eventdev/test_pipeline_atq.c\n+++ b/app/test-eventdev/test_pipeline_atq.c\n@@ -315,6 +315,7 @@ pipeline_atq_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \trte_event_dev_info_get(opt->dev_id, &info);\n \n \tconst struct rte_event_dev_config config = {\n+\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t.nb_event_queues = nb_queues,\n \t\t.nb_event_ports = nb_ports,\n \t\t.nb_events_limit  = info.max_num_events,\ndiff --git a/app/test-eventdev/test_pipeline_queue.c b/app/test-eventdev/test_pipeline_queue.c\nindex 7da89dad5..31f3dbad9 100644\n--- a/app/test-eventdev/test_pipeline_queue.c\n+++ b/app/test-eventdev/test_pipeline_queue.c\n@@ -335,6 +335,7 @@ pipeline_queue_eventdev_setup(struct evt_test *test, struct evt_options *opt)\n \n \trte_event_dev_info_get(opt->dev_id, &info);\n \tconst struct rte_event_dev_config config = {\n+\t\t\t.dequeue_timeout_ns = opt->deq_tmo_nsec,\n \t\t\t.nb_event_queues = nb_queues,\n \t\t\t.nb_event_ports = nb_ports,\n \t\t\t.nb_events_limit  = info.max_num_events,\n",
    "prefixes": []
}