get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 1297883,
    "url": "http://patchwork.ozlabs.org/api/patches/1297883/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20200526105112.3228-1-piotr.kwapulinski@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": "<20200526105112.3228-1-piotr.kwapulinski@intel.com>",
    "list_archive_url": null,
    "date": "2020-05-26T10:51:12",
    "name": "i40e: make PF wait reset loop reliable",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "e89540bb4cac0340c58e12dc2577228f5919d2de",
    "submitter": {
        "id": 76726,
        "url": "http://patchwork.ozlabs.org/api/people/76726/?format=api",
        "name": "Kwapulinski, Piotr",
        "email": "piotr.kwapulinski@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/20200526105112.3228-1-piotr.kwapulinski@intel.com/mbox/",
    "series": [
        {
            "id": 179289,
            "url": "http://patchwork.ozlabs.org/api/series/179289/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=179289",
            "date": "2020-05-26T10:51:12",
            "name": "i40e: make PF wait reset loop reliable",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/179289/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1297883/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1297883/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<intel-wired-lan-bounces@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"
        ],
        "Authentication-Results": [
            "ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=140.211.166.136; helo=silver.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org; receiver=<UNKNOWN>)",
            "ozlabs.org;\n dmarc=fail (p=none dis=none) header.from=intel.com"
        ],
        "Received": [
            "from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 49WW3g0v0rz9sRK\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 26 May 2020 20:51:26 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby silver.osuosl.org (Postfix) with ESMTP id 955FA229D4;\n\tTue, 26 May 2020 10:51:24 +0000 (UTC)",
            "from silver.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id 4xztjytjc+mT; Tue, 26 May 2020 10:51:23 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby silver.osuosl.org (Postfix) with ESMTP id 00FFA204E9;\n\tTue, 26 May 2020 10:51:23 +0000 (UTC)",
            "from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n by ash.osuosl.org (Postfix) with ESMTP id A4F951BF84C\n for <intel-wired-lan@lists.osuosl.org>; Tue, 26 May 2020 10:51:21 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n by whitealder.osuosl.org (Postfix) with ESMTP id 9D1F08693D\n for <intel-wired-lan@lists.osuosl.org>; Tue, 26 May 2020 10:51:21 +0000 (UTC)",
            "from whitealder.osuosl.org ([127.0.0.1])\n by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n with ESMTP id 2KE9bPiksHTM for <intel-wired-lan@lists.osuosl.org>;\n Tue, 26 May 2020 10:51:20 +0000 (UTC)",
            "from mga14.intel.com (mga14.intel.com [192.55.52.115])\n by whitealder.osuosl.org (Postfix) with ESMTPS id 9EFAB8682A\n for <intel-wired-lan@lists.osuosl.org>; Tue, 26 May 2020 10:51:20 +0000 (UTC)",
            "from fmsmga005.fm.intel.com ([10.253.24.32])\n by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 26 May 2020 03:51:20 -0700",
            "from pkwapuli-mobl.ger.corp.intel.com (HELO\n pkwapuli-vbox.igk.intel.com) ([10.213.10.179])\n by fmsmga005.fm.intel.com with ESMTP; 26 May 2020 03:51:19 -0700"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "IronPort-SDR": [
            "\n CMSfwc5ZY7tdXkkaBvb9hvouh153hp7mBg+6UnmEqpk/uLeudTQzchcA0vYL8xlrS7Md9DDw2g\n +3NXcaUvc5HQ==",
            "\n Oq3/09AwdqiTD2DXlMPsfMiI3w0jjhy/HBxarLaOcl0ci77EC+25WJA9t9ArIqs22jOTef1HQd\n Z4kWUmHBgNGw=="
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.73,437,1583222400\"; d=\"scan'208\";a=\"468250765\"",
        "From": "Piotr Kwapulinski <piotr.kwapulinski@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Tue, 26 May 2020 12:51:12 +0200",
        "Message-Id": "<20200526105112.3228-1-piotr.kwapulinski@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "Subject": "[Intel-wired-lan] [PATCH] i40e: make PF wait reset loop reliable",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n <intel-wired-lan.osuosl.org>",
        "List-Unsubscribe": "<https://lists.osuosl.org/mailman/options/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>",
        "List-Post": "<mailto:intel-wired-lan@osuosl.org>",
        "List-Help": "<mailto:intel-wired-lan-request@osuosl.org?subject=help>",
        "List-Subscribe": "<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>",
        "Cc": "Piotr Kwapulinski <piotr.kwapulinski@intel.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "intel-wired-lan-bounces@osuosl.org",
        "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"
    },
    "content": "Use jiffies to limit max waiting time for PF reset to succeed.\nPrevious wait loop was unreliable. It required unreasonably long time\nto wait for PF reset after reboot when NIC was about to enter\nrecovery mode\n\nReviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>\nSigned-off-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>\n---\n drivers/net/ethernet/intel/i40e/i40e_main.c | 20 +++++++++-----------\n 1 file changed, 9 insertions(+), 11 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c\nindex 2a037ec..4b12a54 100644\n--- a/drivers/net/ethernet/intel/i40e/i40e_main.c\n+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c\n@@ -14606,25 +14606,23 @@ static bool i40e_check_recovery_mode(struct i40e_pf *pf)\n  **/\n static i40e_status i40e_pf_loop_reset(struct i40e_pf *pf)\n {\n-\tconst unsigned short MAX_CNT = 1000;\n-\tconst unsigned short MSECS = 10;\n+\t/* wait max 10 seconds for PF reset to succeed */\n+\tconst unsigned long time_end = jiffies + 10 * HZ;\n+\n \tstruct i40e_hw *hw = &pf->hw;\n \ti40e_status ret;\n-\tint cnt;\n \n-\tfor (cnt = 0; cnt < MAX_CNT; ++cnt) {\n+\tret = i40e_pf_reset(hw);\n+\twhile (ret != I40E_SUCCESS && time_before(jiffies, time_end)) {\n+\t\tusleep_range(10000, 20000);\n \t\tret = i40e_pf_reset(hw);\n-\t\tif (!ret)\n-\t\t\tbreak;\n-\t\tmsleep(MSECS);\n \t}\n \n-\tif (cnt == MAX_CNT) {\n+\tif (ret == I40E_SUCCESS)\n+\t\tpf->pfr_count++;\n+\telse\n \t\tdev_info(&pf->pdev->dev, \"PF reset failed: %d\\n\", ret);\n-\t\treturn ret;\n-\t}\n \n-\tpf->pfr_count++;\n \treturn ret;\n }\n \n",
    "prefixes": []
}