get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2604,
    "url": "https://patches.dpdk.org/api/patches/2604/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1422373493-9816-1-git-send-email-danielx.t.mrzyglod@intel.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": "<1422373493-9816-1-git-send-email-danielx.t.mrzyglod@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1422373493-9816-1-git-send-email-danielx.t.mrzyglod@intel.com",
    "date": "2015-01-27T15:44:53",
    "name": "[dpdk-dev,v3] test: fix missing NULL pointer checks",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "2c147b353700a154d86bbbf36b7e09981dd11508",
    "submitter": {
        "id": 23,
        "url": "https://patches.dpdk.org/api/people/23/?format=api",
        "name": "Daniel Mrzyglod",
        "email": "danielx.t.mrzyglod@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1422373493-9816-1-git-send-email-danielx.t.mrzyglod@intel.com/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/2604/comments/",
    "check": "pending",
    "checks": "https://patches.dpdk.org/api/patches/2604/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 [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 91D796702;\n\tTue, 27 Jan 2015 16:45:04 +0100 (CET)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n\tby dpdk.org (Postfix) with ESMTP id 8A6EC6701\n\tfor <dev@dpdk.org>; Tue, 27 Jan 2015 16:45:02 +0100 (CET)",
            "from orsmga002.jf.intel.com ([10.7.209.21])\n\tby orsmga103.jf.intel.com with ESMTP; 27 Jan 2015 07:40:43 -0800",
            "from unknown ([10.217.248.106])\n\tby orsmga002.jf.intel.com with SMTP; 27 Jan 2015 07:44:59 -0800",
            "by  (sSMTP sendmail emulation); Tue, 27 Jan 2015 16:44:57 +0200"
        ],
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.09,475,1418112000\"; d=\"scan'208\";a=\"676797761\"",
        "From": "Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>",
        "To": "dev@dpdk.org",
        "Date": "Tue, 27 Jan 2015 16:44:53 +0100",
        "Message-Id": "<1422373493-9816-1-git-send-email-danielx.t.mrzyglod@intel.com>",
        "X-Mailer": "git-send-email 2.1.1",
        "Subject": "[dpdk-dev] [PATCH v3] test: fix missing NULL pointer checks",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "In test_sched, we are missing NULL pointer checks after create_mempool()\nand rte_pktmbuf_alloc(). Add in these checks using TEST_ASSERT_NOT_NULL macros.\n\nVERIFY macro was removed and replaced by standard test ASSERTS from \"test.h\" header.\nThis provides additional information to track when the failure occured.\n\nv3 changes:\n- remove VERIFY macro\n- fix spelling error.\n- change unproper comment\n\nv2 changes:\n- Replace all VERIFY macros instances by proper TEST_ASSERT* macros.\n- fix description\n\nv1 changes:\n- first iteration of patch using VERIFY macro.\n\nSigned-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>\n---\n app/test/test_sched.c | 39 ++++++++++++++++++---------------------\n 1 file changed, 18 insertions(+), 21 deletions(-)",
    "diff": "diff --git a/app/test/test_sched.c b/app/test/test_sched.c\nindex c957d80..60c62de 100644\n--- a/app/test/test_sched.c\n+++ b/app/test/test_sched.c\n@@ -46,13 +46,6 @@\n #include <rte_sched.h>\n \n \n-#define VERIFY(exp,fmt,args...)                    \t                \\\n-\t\tif (!(exp)) {                                               \\\n-\t\t\tprintf(fmt, ##args);                                    \\\n-\t\t\treturn -1;                                              \\\n-\t\t}\n-\n-\n #define SUBPORT \t0\n #define PIPE \t\t1\n #define TC \t\t\t2\n@@ -166,48 +159,49 @@ test_sched(void)\n \tint err;\n \n \tmp = create_mempool();\n+\tTEST_ASSERT_NOT_NULL(mp, \"Error creating mempool\\n\");\n \n \tport_param.socket = 0;\n \tport_param.rate = (uint64_t) 10000 * 1000 * 1000 / 8;\n \n \tport = rte_sched_port_config(&port_param);\n-\tVERIFY(port != NULL, \"Error config sched port\\n\");\n-\n+\tTEST_ASSERT_NOT_NULL(port, \"Error config sched port\\n\");\n \n \terr = rte_sched_subport_config(port, SUBPORT, subport_param);\n-\tVERIFY(err == 0, \"Error config sched, err=%d\\n\", err);\n+\tTEST_ASSERT_SUCCESS(err, \"Error config sched, err=%d\\n\", err);\n \n \tfor (pipe = 0; pipe < port_param.n_pipes_per_subport; pipe ++) {\n \t\terr = rte_sched_pipe_config(port, SUBPORT, pipe, 0);\n-\t\tVERIFY(err == 0, \"Error config sched pipe %u, err=%d\\n\", pipe, err);\n+\t\tTEST_ASSERT_SUCCESS(err, \"Error config sched pipe %u, err=%d\\n\", pipe, err);\n \t}\n \n \tfor (i = 0; i < 10; i++) {\n \t\tin_mbufs[i] = rte_pktmbuf_alloc(mp);\n+\t\tTEST_ASSERT_NOT_NULL(in_mbufs[i], \"Packet allocation failed\\n\");\n \t\tprepare_pkt(in_mbufs[i]);\n \t}\n \n \n \terr = rte_sched_port_enqueue(port, in_mbufs, 10);\n-\tVERIFY(err == 10, \"Wrong enqueue, err=%d\\n\", err);\n+\tTEST_ASSERT_EQUAL(err, 10, \"Wrong enqueue, err=%d\\n\", err);\n \n \terr = rte_sched_port_dequeue(port, out_mbufs, 10);\n-\tVERIFY(err == 10, \"Wrong dequeue, err=%d\\n\", err);\n+\tTEST_ASSERT_EQUAL(err, 10, \"Wrong dequeue, err=%d\\n\", err);\n \n \tfor (i = 0; i < 10; i++) {\n \t\tenum rte_meter_color color;\n \t\tuint32_t subport, traffic_class, queue;\n \n \t\tcolor = rte_sched_port_pkt_read_color(out_mbufs[i]);\n-\t\tVERIFY(color == e_RTE_METER_YELLOW, \"Wrong color\\n\");\n+\t\tTEST_ASSERT_EQUAL(color, e_RTE_METER_YELLOW, \"Wrong color\\n\");\n \n \t\trte_sched_port_pkt_read_tree_path(out_mbufs[i],\n \t\t\t\t&subport, &pipe, &traffic_class, &queue);\n \n-\t\tVERIFY(subport == SUBPORT, \"Wrong subport\\n\");\n-\t\tVERIFY(pipe == PIPE, \"Wrong pipe\\n\");\n-\t\tVERIFY(traffic_class == TC, \"Wrong traffic_class\\n\");\n-\t\tVERIFY(queue == QUEUE, \"Wrong queue\\n\");\n+\t\tTEST_ASSERT_EQUAL(subport, SUBPORT, \"Wrong subport\\n\");\n+\t\tTEST_ASSERT_EQUAL(pipe, PIPE, \"Wrong pipe\\n\");\n+\t\tTEST_ASSERT_EQUAL(traffic_class, TC, \"Wrong traffic_class\\n\");\n+\t\tTEST_ASSERT_EQUAL(queue, QUEUE, \"Wrong queue\\n\");\n \n \t}\n \n@@ -215,12 +209,15 @@ test_sched(void)\n \tstruct rte_sched_subport_stats subport_stats;\n \tuint32_t tc_ov;\n \trte_sched_subport_read_stats(port, SUBPORT, &subport_stats, &tc_ov);\n-\t//VERIFY(subport_stats.n_pkts_tc[TC-1] == 10, \"Wrong subport stats\\n\");\n-\n+#if 0\n+\tTEST_ASSERT_EQUAL(subport_stats.n_pkts_tc[TC-1], 10, \"Wrong subport stats\\n\");\n+#endif\n \tstruct rte_sched_queue_stats queue_stats;\n \tuint16_t qlen;\n \trte_sched_queue_read_stats(port, QUEUE, &queue_stats, &qlen);\n-\t//VERIFY(queue_stats.n_pkts == 10, \"Wrong queue stats\\n\");\n+#if 0\n+\tTEST_ASSERT_EQUAL(queue_stats.n_pkts, 10, \"Wrong queue stats\\n\");\n+#endif\n \n \trte_sched_port_free(port);\n \n",
    "prefixes": [
        "dpdk-dev",
        "v3"
    ]
}