get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 17097,
    "url": "http://patches.dpdk.org/api/patches/17097/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1479636327-4166-1-git-send-email-jblunck@infradead.org/",
    "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": "<1479636327-4166-1-git-send-email-jblunck@infradead.org>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1479636327-4166-1-git-send-email-jblunck@infradead.org",
    "date": "2016-11-20T10:05:21",
    "name": "[dpdk-dev,1/7] eal: define container_of macro",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "3986e383e037019e8f660ac16f1307f27eceb4a7",
    "submitter": {
        "id": 249,
        "url": "http://patches.dpdk.org/api/people/249/?format=api",
        "name": "Jan Blunck",
        "email": "jblunck@infradead.org"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1479636327-4166-1-git-send-email-jblunck@infradead.org/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/17097/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/17097/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 5092737B2;\n\tSun, 20 Nov 2016 11:07:11 +0100 (CET)",
            "from mail-wm0-f68.google.com (mail-wm0-f68.google.com\n\t[74.125.82.68]) by dpdk.org (Postfix) with ESMTP id B32012BD6\n\tfor <dev@dpdk.org>; Sun, 20 Nov 2016 11:07:08 +0100 (CET)",
            "by mail-wm0-f68.google.com with SMTP id m203so18247189wma.3\n\tfor <dev@dpdk.org>; Sun, 20 Nov 2016 02:07:08 -0800 (PST)",
            "from weierstrass.local.net ([91.200.110.70])\n\tby smtp.gmail.com with ESMTPSA id\n\td184sm13235434wmd.8.2016.11.20.02.07.07\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tSun, 20 Nov 2016 02:07:07 -0800 (PST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;\n\th=sender:from:to:cc:subject:date:message-id;\n\tbh=T+rKJB7dzdFzk0/b3hpq3AO6pmHz3NP5abxSAH4N4w0=;\n\tb=TzLMqF+14hI2gWMp6lTq0bPntOpsBUXHJmqsjnmNFkY2xqv5IcNbCli1ae1kW/K3lo\n\t8UndnTnrl/T/mOa/u4URq/hC02rmHqyVe4orv8JiqOHo/fjIX8g1dkGBoEKTkh3woxjm\n\tZEXvlMCq9TqInPXSABYFUcvLm7HT6sJQIRgJoZtaeidLK/wGiNKVPR1s+slJbUjvgwrL\n\tyfZUBEautl7SsTfJQuZoPucNQ6p38+dR1UfLF69ZtUhfBn4JmxRgX/XrI7rpdQnHPllY\n\tzdjC6yRyDmeepF/tyczNvMlGky0eKQjoxJ/lzAyM5y6tdj6brReJ4PTtk+V+FmwISxUy\n\t6oPg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:sender:from:to:cc:subject:date:message-id;\n\tbh=T+rKJB7dzdFzk0/b3hpq3AO6pmHz3NP5abxSAH4N4w0=;\n\tb=OS8zlTjlfAU+VvYcKT9S2BpgKZ4kFyHHdSG6zj294Voq6GILW8xmTgOzP10QRWD/pm\n\t4551/4uPo7zd3mdPBFZ7LxZoiO80RiXirgXrkgbqOZSax4dEvSRrfKULoyE21XGGUj/1\n\tajRAi9BM0BfHsBGddLHwRIezTRKLY+gZNXKtWq14+38atsoExSkJOmBO1MXD87Jw5sor\n\tEl4PjHjXTo66408svgaAasqnZ9Qb2aJ3PUGz2vvHe42ZtzjCWRnRdpRWRcbi/w7EW9Az\n\tCGD0TCtpNgclqEzkcxi2c/4Y6D7VE7JASijI5r1xHfhYexeaGK1F8WdV82oyBlbLteze\n\tMjAw==",
        "X-Gm-Message-State": "AKaTC01+MLVJI8ZMEXCHYqGqI9MnEk9Autsgbjiok902JhZIMGwTOEoE1vR2PyExIFUIyg==",
        "X-Received": "by 10.194.115.70 with SMTP id jm6mr5262234wjb.140.1479636428446; \n\tSun, 20 Nov 2016 02:07:08 -0800 (PST)",
        "From": "Jan Blunck <jblunck@infradead.org>",
        "To": "dev@dpdk.org",
        "Cc": "shreyansh.jain@nxp.com,\n\tJan Viktorin <viktorin@rehivetech.com>",
        "Date": "Sun, 20 Nov 2016 11:05:21 +0100",
        "Message-Id": "<1479636327-4166-1-git-send-email-jblunck@infradead.org>",
        "X-Mailer": "git-send-email 2.7.4",
        "Subject": "[dpdk-dev] [PATCH 1/7] eal: define container_of macro",
        "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": "This macro is based on Jan Viktorin's original patch but also checks the\ntype of the passed pointer against the type of the member.\n\nSigned-off-by: Jan Viktorin <viktorin@rehivetech.com>\nSigned-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>\n[jblunck@infradead.org: add type checking and __extension__]\nSigned-off-by: Jan Blunck <jblunck@infradead.org>\n---\n lib/librte_eal/common/include/rte_common.h | 20 ++++++++++++++++++++\n 1 file changed, 20 insertions(+)",
    "diff": "diff --git a/lib/librte_eal/common/include/rte_common.h b/lib/librte_eal/common/include/rte_common.h\nindex db5ac91..8dda3e2 100644\n--- a/lib/librte_eal/common/include/rte_common.h\n+++ b/lib/librte_eal/common/include/rte_common.h\n@@ -331,6 +331,26 @@ rte_bsf32(uint32_t v)\n #define offsetof(TYPE, MEMBER)  __builtin_offsetof (TYPE, MEMBER)\n #endif\n \n+/**\n+ * Return pointer to the wrapping struct instance.\n+ *\n+ * Example:\n+ *\n+ *  struct wrapper {\n+ *      ...\n+ *      struct child c;\n+ *      ...\n+ *  };\n+ *\n+ *  struct child *x = obtain(...);\n+ *  struct wrapper *w = container_of(x, struct wrapper, c);\n+ */\n+#ifndef container_of\n+#define container_of(ptr, type, member)\t__extension__ ({\t\t\\\n+\t\t\ttypeof(((type *)0)->member) *_ptr = (ptr);\t\\\n+\t\t\t(type *)(((char *)_ptr) - offsetof(type, member)); })\n+#endif\n+\n #define _RTE_STR(x) #x\n /** Take a macro value and get a string version of it */\n #define RTE_STR(x) _RTE_STR(x)\n",
    "prefixes": [
        "dpdk-dev",
        "1/7"
    ]
}