get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 670156,
    "url": "http://patchwork.ozlabs.org/api/patches/670156/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/1473895479-23035-2-git-send-email-bimmy.pujari@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": "<1473895479-23035-2-git-send-email-bimmy.pujari@intel.com>",
    "list_archive_url": null,
    "date": "2016-09-14T23:24:31",
    "name": "[next,S47,1/9] i40e: Fix client interaction",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "e671856e69f1909be4d2aa98a033df315757577c",
    "submitter": {
        "id": 68919,
        "url": "http://patchwork.ozlabs.org/api/people/68919/?format=api",
        "name": "Pujari, Bimmy",
        "email": "bimmy.pujari@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/1473895479-23035-2-git-send-email-bimmy.pujari@intel.com/mbox/",
    "series": [],
    "comments": "http://patchwork.ozlabs.org/api/patches/670156/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/670156/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 fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3sZHhd1SFYz9s8x\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 15 Sep 2016 09:25:21 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id BE4DB86F77;\n\tWed, 14 Sep 2016 23:25:19 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id WoN-QkQ-ftPT; Wed, 14 Sep 2016 23:25:19 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 52914869C5;\n\tWed, 14 Sep 2016 23:25:19 +0000 (UTC)",
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\tby ash.osuosl.org (Postfix) with ESMTP id 5B44D1D3BD3\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 14 Sep 2016 23:25:14 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 57104842FA\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 14 Sep 2016 23:25:14 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id 8KKDlRgUMwC1 for <intel-wired-lan@lists.osuosl.org>;\n\tWed, 14 Sep 2016 23:25:12 +0000 (UTC)",
            "from mga09.intel.com (mga09.intel.com [134.134.136.24])\n\tby fraxinus.osuosl.org (Postfix) with ESMTPS id D687B85775\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tWed, 14 Sep 2016 23:25:12 +0000 (UTC)",
            "from fmsmga006.fm.intel.com ([10.253.24.20])\n\tby orsmga102.jf.intel.com with ESMTP; 14 Sep 2016 16:25:12 -0700",
            "from bimmy.jf.intel.com (HELO bimmy.linux1.jf.intel.com)\n\t([134.134.2.177])\n\tby fmsmga006.fm.intel.com with ESMTP; 14 Sep 2016 16:25:11 -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.30,336,1470726000\"; d=\"scan'208\";a=\"8507685\"",
        "From": "Bimmy Pujari <bimmy.pujari@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Wed, 14 Sep 2016 16:24:31 -0700",
        "Message-Id": "<1473895479-23035-2-git-send-email-bimmy.pujari@intel.com>",
        "X-Mailer": "git-send-email 2.4.11",
        "In-Reply-To": "<1473895479-23035-1-git-send-email-bimmy.pujari@intel.com>",
        "References": "<1473895479-23035-1-git-send-email-bimmy.pujari@intel.com>",
        "Subject": "[Intel-wired-lan] [next PATCH S47 1/9] i40e: Fix client interaction",
        "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: Carolyn Wyborny <carolyn.wyborny@intel.com>\n\nThis patch fixes a problem in the client interface that\nwas causing random stack traces in RDMA driver load and\nunload tests.  This patch fixes the problem by checking\nfor an existing client before trying to open it.  Without\nthis patch, there is a timing related null pointer deref.\n\nSigned-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>\nChange-ID: Ib73d30671a27f6f9770dd53b3e5292b88d6b62da\n---\nTesting Hints:  See HSD for repro script\n\n drivers/net/ethernet/intel/i40e/i40e_client.c | 29 ++++++++++++---------------\n 1 file changed, 13 insertions(+), 16 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/i40e/i40e_client.c b/drivers/net/ethernet/intel/i40e/i40e_client.c\nindex 250db0b..6ffac03 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e_client.c\n+++ b/drivers/net/ethernet/intel/i40e/i40e_client.c\n@@ -565,7 +565,7 @@ void i40e_client_subtask(struct i40e_pf *pf)\n \t\t\tif (test_bit(__I40E_DOWN, &pf->vsi[pf->lan_vsi]->state))\n \t\t\t\tcontinue;\n \t\t} else {\n-\t\t\tdev_warn(&pf->pdev->dev, \"This client %s is being instanciated at probe\\n\",\n+\t\t\tdev_warn(&pf->pdev->dev, \"This client %s is being instantiated at probe\\n\",\n \t\t\t\t client->name);\n \t\t}\n \n@@ -582,24 +582,21 @@ void i40e_client_subtask(struct i40e_pf *pf)\n \t\t\tdev_info(&pf->pdev->dev, \"Added instance of Client %s to PF%d bus=0x%02x func=0x%02x\\n\",\n \t\t\t\t client->name, pf->hw.pf_id,\n \t\t\t\t pf->hw.bus.device, pf->hw.bus.func);\n-\t\t}\n-\n-\t\tmutex_lock(&i40e_client_instance_mutex);\n-\t\t/* Send an Open request to the client */\n-\t\tatomic_inc(&cdev->ref_cnt);\n-\t\tif (client->ops && client->ops->open)\n-\t\t\tret = client->ops->open(&cdev->lan_info, client);\n-\t\tatomic_dec(&cdev->ref_cnt);\n-\t\tif (!ret) {\n+\t\t\tmutex_lock(&i40e_client_instance_mutex);\n+\t\t\tatomic_inc(&cdev->ref_cnt);\n+\t\t\tif (client->ops && client->ops->open)\n+\t\t\t\tret = client->ops->open(&cdev->lan_info,\n+\t\t\t\t\t\t\tclient);\n+\t\t\tatomic_dec(&cdev->ref_cnt);\n+\t\t\tif (ret < 0) {\n+\t\t\t\tmutex_unlock(&i40e_client_instance_mutex);\n+\t\t\t\ti40e_client_del_instance(pf, client);\n+\t\t\t\tatomic_dec(&client->ref_cnt);\n+\t\t\t\tcontinue;\n+\t\t\t}\n \t\t\tset_bit(__I40E_CLIENT_INSTANCE_OPENED, &cdev->state);\n-\t\t} else {\n-\t\t\t/* remove client instance */\n \t\t\tmutex_unlock(&i40e_client_instance_mutex);\n-\t\t\ti40e_client_del_instance(pf, client);\n-\t\t\tatomic_dec(&client->ref_cnt);\n-\t\t\tcontinue;\n \t\t}\n-\t\tmutex_unlock(&i40e_client_instance_mutex);\n \t}\n \tmutex_unlock(&i40e_client_mutex);\n }\n",
    "prefixes": [
        "next",
        "S47",
        "1/9"
    ]
}