get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 534126,
    "url": "http://patchwork.ozlabs.org/api/patches/534126/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1445471236-35918-4-git-send-email-catherine.sullivan@intel.com/",
    "project": {
        "id": 46,
        "url": "http://patchwork.ozlabs.org/api/projects/46/?format=api",
        "name": "Intel Wired Ethernet development",
        "link_name": "intel-wired-lan",
        "list_id": "intel-wired-lan.osuosl.org",
        "list_email": "intel-wired-lan@osuosl.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<1445471236-35918-4-git-send-email-catherine.sullivan@intel.com>",
    "list_archive_url": null,
    "date": "2015-10-21T23:47:04",
    "name": "[next,S19,03/15] i40e: remove BUG_ON from feature string building",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "41751aac2966e935300cd0e89d6d6d07e9e29676",
    "submitter": {
        "id": 13931,
        "url": "http://patchwork.ozlabs.org/api/people/13931/?format=api",
        "name": "Catherine Sullivan",
        "email": "catherine.sullivan@intel.com"
    },
    "delegate": {
        "id": 68,
        "url": "http://patchwork.ozlabs.org/api/users/68/?format=api",
        "username": "jtkirshe",
        "first_name": "Jeff",
        "last_name": "Kirsher",
        "email": "jeffrey.t.kirsher@intel.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1445471236-35918-4-git-send-email-catherine.sullivan@intel.com/mbox/",
    "series": [],
    "comments": "http://patchwork.ozlabs.org/api/patches/534126/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/534126/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<intel-wired-lan-bounces@lists.osuosl.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@bilbo.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Received": [
            "from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n\tby ozlabs.org (Postfix) with ESMTP id 77248141310\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 22 Oct 2015 10:48:29 +1100 (AEDT)",
            "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id C304587FC8;\n\tWed, 21 Oct 2015 23:48:28 +0000 (UTC)",
            "from hemlock.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id J6BJ2ZlpMVxW; Wed, 21 Oct 2015 23:48:28 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 502D686DC6;\n\tWed, 21 Oct 2015 23:48:28 +0000 (UTC)",
            "from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n\tby ash.osuosl.org (Postfix) with ESMTP id 49D7E1C04C3\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 21 Oct 2015 23:48:27 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 452F087030\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 21 Oct 2015 23:48:27 +0000 (UTC)",
            "from hemlock.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id ovEcEcLUXqGF for <intel-wired-lan@lists.osuosl.org>;\n\tWed, 21 Oct 2015 23:48:26 +0000 (UTC)",
            "from mga01.intel.com (mga01.intel.com [192.55.52.88])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id C965A880D2\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 21 Oct 2015 23:48:26 +0000 (UTC)",
            "from fmsmga001.fm.intel.com ([10.253.24.23])\n\tby fmsmga101.fm.intel.com with ESMTP; 21 Oct 2015 16:48:26 -0700",
            "from catheri1-tigger.jf.intel.com ([134.134.176.92])\n\tby fmsmga001.fm.intel.com with ESMTP; 21 Oct 2015 16:48:26 -0700"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.20,179,1444719600\"; d=\"scan'208\";a=\"816562481\"",
        "From": "Catherine Sullivan <catherine.sullivan@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Wed, 21 Oct 2015 19:47:04 -0400",
        "Message-Id": "<1445471236-35918-4-git-send-email-catherine.sullivan@intel.com>",
        "X-Mailer": "git-send-email 1.9.3",
        "In-Reply-To": "<1445471236-35918-1-git-send-email-catherine.sullivan@intel.com>",
        "References": "<1445471236-35918-1-git-send-email-catherine.sullivan@intel.com>",
        "Subject": "[Intel-wired-lan] [next PATCH S19 03/15] i40e: remove BUG_ON from\n\tfeature string building",
        "X-BeenThere": "intel-wired-lan@lists.osuosl.org",
        "X-Mailman-Version": "2.1.18-1",
        "Precedence": "list",
        "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.lists.osuosl.org>",
        "List-Unsubscribe": "<http://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@lists.osuosl.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>",
        "List-Post": "<mailto:intel-wired-lan@lists.osuosl.org>",
        "List-Help": "<mailto:intel-wired-lan-request@lists.osuosl.org?subject=help>",
        "List-Subscribe": "<http://lists.osuosl.org/mailman/listinfo/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@lists.osuosl.org?subject=subscribe>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "intel-wired-lan-bounces@lists.osuosl.org",
        "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@lists.osuosl.org>"
    },
    "content": "From: Shannon Nelson <shannon.nelson@intel.com>\n\nThere's really no reason to kill the kernel thread just because of a\nlittle info string. This reworks the code to use snprintf's limiting to\nassure that the string is never too long, and WARN_ON to still put out\na warning that we might want to look at the feature list length.\n\nPrompted by a recent Linus diatribe.\n\nSigned-off-by: Shannon Nelson <shannon.nelson@intel.com>\nChange-ID: If52ba5ca1c2344d8bf454a31bbb805eb5d2c5802\n\n---\nTesting-hints: Internal code change, check that the patch was applied\nand compiled correctly.\n drivers/net/ethernet/intel/i40e/i40e_main.c | 34 +++++++++++++++--------------\n 1 file changed, 18 insertions(+), 16 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c\nindex d2e4ea8..a8fd031 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e_main.c\n+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c\n@@ -10128,10 +10128,12 @@ static int i40e_setup_pf_filter_control(struct i40e_pf *pf)\n }\n \n #define INFO_STRING_LEN 255\n+#define REMAIN(__x) (INFO_STRING_LEN - (__x))\n static void i40e_print_features(struct i40e_pf *pf)\n {\n \tstruct i40e_hw *hw = &pf->hw;\n \tchar *buf, *string;\n+\tint i = 0;\n \n \tstring = kzalloc(INFO_STRING_LEN, GFP_KERNEL);\n \tif (!string) {\n@@ -10141,42 +10143,42 @@ static void i40e_print_features(struct i40e_pf *pf)\n \n \tbuf = string;\n \n-\tbuf += sprintf(string, \"Features: PF-id[%d] \", hw->pf_id);\n+\ti += snprintf(&buf[i], REMAIN(i), \"Features: PF-id[%d] \", hw->pf_id);\n #ifdef CONFIG_PCI_IOV\n-\tbuf += sprintf(buf, \"VFs: %d \", pf->num_req_vfs);\n+\ti += snprintf(&buf[i], REMAIN(i), \"VFs: %d \", pf->num_req_vfs);\n #endif\n-\tbuf += sprintf(buf, \"VSIs: %d QP: %d RX: %s \",\n-\t\t       pf->hw.func_caps.num_vsis,\n-\t\t       pf->vsi[pf->lan_vsi]->num_queue_pairs,\n-\t\t       pf->flags & I40E_FLAG_RX_PS_ENABLED ? \"PS\" : \"1BUF\");\n+\ti += snprintf(&buf[i], REMAIN(i), \"VSIs: %d QP: %d RX: %s \",\n+\t\t      pf->hw.func_caps.num_vsis,\n+\t\t      pf->vsi[pf->lan_vsi]->num_queue_pairs,\n+\t\t      pf->flags & I40E_FLAG_RX_PS_ENABLED ? \"PS\" : \"1BUF\");\n \n \tif (pf->flags & I40E_FLAG_RSS_ENABLED)\n-\t\tbuf += sprintf(buf, \"RSS \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"RSS \");\n \tif (pf->flags & I40E_FLAG_FD_ATR_ENABLED)\n-\t\tbuf += sprintf(buf, \"FD_ATR \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"FD_ATR \");\n \tif (pf->flags & I40E_FLAG_FD_SB_ENABLED) {\n-\t\tbuf += sprintf(buf, \"FD_SB \");\n-\t\tbuf += sprintf(buf, \"NTUPLE \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"FD_SB \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"NTUPLE \");\n \t}\n \tif (pf->flags & I40E_FLAG_DCB_CAPABLE)\n-\t\tbuf += sprintf(buf, \"DCB \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"DCB \");\n #if IS_ENABLED(CONFIG_VXLAN)\n-\tbuf += sprintf(buf, \"VxLAN \");\n+\ti += snprintf(&buf[i], REMAIN(i), \"VxLAN \");\n #endif\n \tif (pf->flags & I40E_FLAG_PTP)\n-\t\tbuf += sprintf(buf, \"PTP \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"PTP \");\n #ifdef I40E_FCOE\n \tif (pf->flags & I40E_FLAG_FCOE_ENABLED)\n-\t\tbuf += sprintf(buf, \"FCOE \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"FCOE \");\n #endif\n \tif (pf->flags & I40E_FLAG_VEB_MODE_ENABLED)\n-\t\tbuf += sprintf(buf, \"VEB \");\n+\t\ti += snprintf(&buf[i], REMAIN(i), \"VEPA \");\n \telse\n \t\tbuf += sprintf(buf, \"VEPA \");\n \n-\tBUG_ON(buf > (string + INFO_STRING_LEN));\n \tdev_info(&pf->pdev->dev, \"%s\\n\", string);\n \tkfree(string);\n+\tWARN_ON(i > INFO_STRING_LEN);\n }\n \n /**\n",
    "prefixes": [
        "next",
        "S19",
        "03/15"
    ]
}