get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 1290819,
    "url": "http://patchwork.ozlabs.org/api/patches/1290819/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20200515043127.3882162-1-punit1.agrawal@toshiba.co.jp/",
    "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": "<20200515043127.3882162-1-punit1.agrawal@toshiba.co.jp>",
    "list_archive_url": null,
    "date": "2020-05-15T04:31:27",
    "name": "e1000e: Relax condition to trigger reset for ME workaround",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "cec82b6ee0532eb4cec137796ef5c74a6438abd0",
    "submitter": {
        "id": 78690,
        "url": "http://patchwork.ozlabs.org/api/people/78690/?format=api",
        "name": "Punit Agrawal",
        "email": "punit1.agrawal@toshiba.co.jp"
    },
    "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/20200515043127.3882162-1-punit1.agrawal@toshiba.co.jp/mbox/",
    "series": [
        {
            "id": 177075,
            "url": "http://patchwork.ozlabs.org/api/series/177075/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=177075",
            "date": "2020-05-15T04:31:27",
            "name": "e1000e: Relax condition to trigger reset for ME workaround",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/177075/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1290819/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1290819/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.137; helo=fraxinus.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org; receiver=<UNKNOWN>)",
            "ozlabs.org;\n dmarc=fail (p=none dis=none) header.from=toshiba.co.jp"
        ],
        "Received": [
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\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 49Nb9B37jWz9sRf\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 15 May 2020 14:32:11 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 8558B87CC0;\n\tFri, 15 May 2020 04:32:08 +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 qbVYqlplPjOQ; Fri, 15 May 2020 04:32:04 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id 028C487BBC;\n\tFri, 15 May 2020 04:32:04 +0000 (UTC)",
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n by ash.osuosl.org (Postfix) with ESMTP id 3EC1F1BF866\n for <intel-wired-lan@lists.osuosl.org>; Fri, 15 May 2020 04:32:03 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n by fraxinus.osuosl.org (Postfix) with ESMTP id 394FF87BBC\n for <intel-wired-lan@lists.osuosl.org>; Fri, 15 May 2020 04:32:03 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n with ESMTP id uOIyT-jARgAY for <intel-wired-lan@lists.osuosl.org>;\n Fri, 15 May 2020 04:31:58 +0000 (UTC)",
            "from mo-csw.securemx.jp (mo-csw1116.securemx.jp [210.130.202.158])\n by fraxinus.osuosl.org (Postfix) with ESMTPS id 1614587926\n for <intel-wired-lan@lists.osuosl.org>; Fri, 15 May 2020 04:31:57 +0000 (UTC)",
            "by mo-csw.securemx.jp (mx-mo-csw1116) id 04F4ViWo023273;\n Fri, 15 May 2020 13:31:44 +0900",
            "from imx12.toshiba.co.jp (imx12.toshiba.co.jp [61.202.160.132])\n by relay.securemx.jp (mx-mr1113) id 04F4VgFx003154;\n Fri, 15 May 2020 13:31:42 +0900",
            "from enc02.toshiba.co.jp ([61.202.160.51])\n by imx12.toshiba.co.jp  with ESMTP id 04F4VgJS024761;\n Fri, 15 May 2020 13:31:42 +0900 (JST)",
            "from hop101.toshiba.co.jp ([133.199.85.107])\n by enc02.toshiba.co.jp  with ESMTP id 04F4Vf4u001744;\n Fri, 15 May 2020 13:31:41 +0900"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "X-Iguazu-Qid": "2wHHidEfDmcahIIBuK",
        "X-Iguazu-QSIG": "v=2; s=0; t=1589517104; q=2wHHidEfDmcahIIBuK;\n m=slt4I4Ma9asGl9MdH6xWfznD1YOKckyNoxkOisCo/x0=",
        "From": "Punit Agrawal <punit1.agrawal@toshiba.co.jp>",
        "To": "jeffrey.t.kirsher@intel.com",
        "Date": "Fri, 15 May 2020 13:31:27 +0900",
        "X-TSB-HOP": "ON",
        "Message-Id": "<20200515043127.3882162-1-punit1.agrawal@toshiba.co.jp>",
        "X-Mailer": "git-send-email 2.26.2",
        "MIME-Version": "1.0",
        "Subject": "[Intel-wired-lan] [PATCH] e1000e: Relax condition to trigger reset\n for ME workaround",
        "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": "daniel.sangorrin@toshiba.co.jp,\n Punit Agrawal <punit1.agrawal@toshiba.co.jp>, netdev@vger.kernel.org,\n linux-kernel@vger.kernel.org, intel-wired-lan@lists.osuosl.org,\n Alexander Duyck <alexander.h.duyck@linux.intel.com>,\n \"David S. Miller\" <davem@davemloft.net>",
        "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": "It's an error if the value of the RX/TX tail descriptor does not match\nwhat was written. The error condition is true regardless the duration\nof the interference from ME. But the driver only performs the reset if\nE1000_ICH_FWSM_PCIM2PCI_COUNT (2000) iterations of 50us delay have\ntranspired. The extra condition can lead to inconsistency between the\nstate of hardware as expected by the driver.\n\nFix this by dropping the check for number of delay iterations.\n\nWhile at it, also make __ew32_prepare() static as it's not used\nanywhere else.\n\nSigned-off-by: Punit Agrawal <punit1.agrawal@toshiba.co.jp>\nReviewed-by: Alexander Duyck <alexander.h.duyck@linux.intel.com>\nCc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>\nCc: \"David S. Miller\" <davem@davemloft.net>\nCc: intel-wired-lan@lists.osuosl.org\nCc: netdev@vger.kernel.org\nCc: linux-kernel@vger.kernel.org\n---\nHi Jeff,\n\nIf there are no further comments please consider merging the patch.\n\nAlso, should it be marked for backport to stable?\n\nThanks,\nPunit\n\nRFC[0] -> v1:\n* Dropped return value for __ew32_prepare() as it's not used\n* Made __ew32_prepare() static\n* Added tags\n\n[0] https://lkml.org/lkml/2020/5/12/20\n\n drivers/net/ethernet/intel/e1000e/e1000.h  |  1 -\n drivers/net/ethernet/intel/e1000e/netdev.c | 12 +++++-------\n 2 files changed, 5 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/drivers/net/ethernet/intel/e1000e/e1000.h b/drivers/net/ethernet/intel/e1000e/e1000.h\nindex 37a2314d3e6b..944abd5eae11 100644\n--- a/drivers/net/ethernet/intel/e1000e/e1000.h\n+++ b/drivers/net/ethernet/intel/e1000e/e1000.h\n@@ -576,7 +576,6 @@ static inline u32 __er32(struct e1000_hw *hw, unsigned long reg)\n \n #define er32(reg)\t__er32(hw, E1000_##reg)\n \n-s32 __ew32_prepare(struct e1000_hw *hw);\n void __ew32(struct e1000_hw *hw, unsigned long reg, u32 val);\n \n #define ew32(reg, val)\t__ew32(hw, E1000_##reg, (val))\ndiff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c\nindex 177c6da80c57..e9aa47aba7eb 100644\n--- a/drivers/net/ethernet/intel/e1000e/netdev.c\n+++ b/drivers/net/ethernet/intel/e1000e/netdev.c\n@@ -119,14 +119,12 @@ static const struct e1000_reg_info e1000_reg_info_tbl[] = {\n  * has bit 24 set while ME is accessing MAC CSR registers, wait if it is set\n  * and try again a number of times.\n  **/\n-s32 __ew32_prepare(struct e1000_hw *hw)\n+static void __ew32_prepare(struct e1000_hw *hw)\n {\n \ts32 i = E1000_ICH_FWSM_PCIM2PCI_COUNT;\n \n \twhile ((er32(FWSM) & E1000_ICH_FWSM_PCIM2PCI) && --i)\n \t\tudelay(50);\n-\n-\treturn i;\n }\n \n void __ew32(struct e1000_hw *hw, unsigned long reg, u32 val)\n@@ -607,11 +605,11 @@ static void e1000e_update_rdt_wa(struct e1000_ring *rx_ring, unsigned int i)\n {\n \tstruct e1000_adapter *adapter = rx_ring->adapter;\n \tstruct e1000_hw *hw = &adapter->hw;\n-\ts32 ret_val = __ew32_prepare(hw);\n \n+\t__ew32_prepare(hw);\n \twritel(i, rx_ring->tail);\n \n-\tif (unlikely(!ret_val && (i != readl(rx_ring->tail)))) {\n+\tif (unlikely(i != readl(rx_ring->tail))) {\n \t\tu32 rctl = er32(RCTL);\n \n \t\tew32(RCTL, rctl & ~E1000_RCTL_EN);\n@@ -624,11 +622,11 @@ static void e1000e_update_tdt_wa(struct e1000_ring *tx_ring, unsigned int i)\n {\n \tstruct e1000_adapter *adapter = tx_ring->adapter;\n \tstruct e1000_hw *hw = &adapter->hw;\n-\ts32 ret_val = __ew32_prepare(hw);\n \n+\t__ew32_prepare(hw);\n \twritel(i, tx_ring->tail);\n \n-\tif (unlikely(!ret_val && (i != readl(tx_ring->tail)))) {\n+\tif (unlikely(i != readl(tx_ring->tail))) {\n \t\tu32 tctl = er32(TCTL);\n \n \t\tew32(TCTL, tctl & ~E1000_TCTL_EN);\n",
    "prefixes": []
}